tft每日頭條

 > 科技

 > 軟件測試中的系統測試包括什麼

軟件測試中的系統測試包括什麼

科技 更新时间:2024-08-31 00:21:41

軟件測試中的系統測試包括什麼(什麼是軟件測試)1

什麼是軟件測試?

軟件測試,顧名思義,是一種檢查軟件結果是否符合預期的活動。有效的軟件測試确保軟件做它應該做的事情——也就是說,它驗證軟件是否适合某一目的。

軟件測試可以手動執行,也可以使用自動化工具執行,甚至可以混合執行。

為什麼說軟件必須進行測試?

正如我們前面提到的,軟件測試是在産品發布前識别缺陷的好方法。

為了強調這一點,這裡有一些現實生活中的例子,說明為什麼應該認真對待正确的軟件測試。

  • 2015年4月,彭博的倫敦終端由于軟件故障而崩潰。這影響了成千上萬的金融市場交易者。它甚至迫使英國政府推遲了30億英鎊的債券發售。通過适當的測試,這是可以避免的。
  • 同樣在2015年,由于一個身份不明的軟件故障,星巴克被迫關閉了在美國和加拿大約60%的門店。在他們的銷售點系統的日常系統刷新期間的一個問題,阻止公司進行交易。在某些情況下,星巴克被迫免費提供訂單。
  • 1991年2月,在第一次海灣戰争期間,一枚伊拉克導彈擊中了美國在沙特阿拉伯達蘭的基地,造成28名美國士兵死亡。經過調查,确定基地的反彈道系統發射失敗是因為電腦故障。内部時鐘以每小時幾毫秒的速度漂移,這最終對系統的計時産生了巨大影響。
  • 尼桑曾被迫從市場上召回将近100萬輛2013年和2014年的英菲尼迪車型,原因是發現了與安全氣囊傳感器有關的嚴重軟件缺陷。在此之前,有兩起事故導緻這個問題最終被發現。
  • 1982年福克蘭群島戰争期間,皇家海軍驅逐艦英國艦隊謝菲爾德由于雷達預警系統的軟件故障,該公司已經沉沒。根據一項從時間開始報告當它能夠捕捉到來襲的飛魚反艦導彈時,它将其記錄為“友軍”,阻止了反措施的發射。
  • 最近,在2018年兩架飛機墜毀後,波音737 Max 8被迫停飛,進行軟件升級。這些軟件故障不僅讓波音公司損失了數十億美元,而且不幸地奪去了數百人的生命。

如果實行了适當的檢測制度,上述情況至少有一部分是可以避免的。但是,這些錯誤在發生之前是不容易預見的。

軟件測試的好處是什麼?

軟件測試中的系統測試包括什麼(什麼是軟件測試)2

  • 軟件測試是非常劃算的:這可能是軟件測試最重要的好處。對任何IT項目進行及時的測試可以幫助您在長期内節省資金。對于在開發周期的早期發現錯誤、bug和其他問題,這一點尤其正确。
  • 軟件測試有助于提高安全性:測試的另一個至關重要的好處是确保産品的安全性,它給開發人員帶來好處。這不僅确保了消費者對産品的信任,還有助于在黑客發現之前堵住其防禦漏洞。
  • 産品質量:這是任何軟件産品的基本要求。測試确保向客戶交付高質量的産品。
  • 顧客滿意:任何産品的主要目的都是讓顧客滿意。UI/UX測試确保最佳用戶體驗。
有哪些不同類型的軟件測試?

軟件測試通常分為三大類。廣義上來說,這些是:

  • 功能測試
  • 非功能測試和性能測試
  • 維護測試
功能軟件測試有哪些類型?

下面是一些最常見的功能軟件測試形式。

1. 集成測試

集成測試是軟件測試的一種形式,其目的是檢查一塊軟件中所有集成的模塊。這通常發生在所有組件模塊集成在一起之後,因此有了這個術語。

模塊通常可以由代碼模塊、單獨的應用程序、網絡上的客戶端和服務器應用程序等組成。這種類型的測試尤其與客戶機/服務器和分布式系統相關。

2. 單元測試

與集成測試不同,單元測試是一種評估單個組件或模塊的軟件測試形式。單元是任何軟件中最小的可測試部分。這樣的測試通常由程序員自己執行,而不是由專門的測試人員執行。這是因為它往往需要程序内部設計和代碼的詳細知識。

單元測試是軟件測試的第一級,在集成測試之前完成。

3.系統測試

系統測試在某種程度上類似于集成測試,但是更加全面。這種形式的測試将檢查整個系統是否完全符合軟件的需求。

它有時被稱為黑盒類型測試,在集成測試之後執行,并驗證整個軟件包是否按預期工作。這是一個必要的測試過程,以确保任何交付的包的最高質量。

4. 冒煙測試

冒煙測試是一種初步測試,用于檢查特定應用程序的基本功能和穩定性。這樣的測試旨在快速執行,其目标通常是确保系統的主要特性能夠按照預期工作。

這樣的測試通常在新構建被開發之後立即執行,并且在更深入的測試之前檢查穩定性。冒煙測試有效地尋找代碼中的“顯示暫停”缺陷,這些缺陷可能會阻止以後的測試正常運行,或者根本無法正常運行。

如果測試人員發現主要的關鍵功能在初始階段就被分解了,那麼測試團隊就可以拒絕構建,并相應地通知開發團隊。冒煙測試是在任何功能或回歸測試的詳細級别上進行的。”-軟件測試幫助。

5. 完整性測試

完整性測試用于确定一個新軟件版本的性能是否足夠好,可以接受它進行進一步的主要測試。例如,如果應用程序在初次使用時崩潰,則認為該系統太不穩定,無法進行進一步測試。

它還用于檢查代碼或功能中的微小更改,以确定這些更改不會引入進一步的問題。這個測試并不是用來客觀地驗證軟件,而是确保開發人員在生産軟件時已經應用了合理性(即理智)。

6. 回歸測試

回歸測試用于在對模塊或功能進行修改後對應用程序進行整體測試——因此稱為回歸測試。實際上,它用于确認所做的任何更改沒有對其他現有特性産生不利影響。

回歸測試隻是對已經執行的測試用例的全部或部分選擇,這些用例被重新執行,以确保現有的功能工作良好。進行此測試是為了确保新的代碼更改不會對現有功能産生副作用。它确保了在完成最新的代碼更改後,舊代碼仍然可以工作。”

7. 圖形用戶界面(GUI)測試

圖形用戶界面(簡稱GUI)測試,顧名思義,是針對客戶端或最終用戶需求對界面進行的測試。這通常會在項目簡介中解釋,通常還會提供用于測試的參考GUI原型。

這類測試通常檢查在給定或範圍内的分辨率下按鈕和輸入字段的大小。它還将檢查文本、表格和一般内容的對齊方式。

這樣的測試還應該驗證出現的任何菜單,比如填充的下拉菜單。它還驗證頁面不會波動,以及當鼠标指針懸停在頁面上時對齊保持穩定。

8. 測試

測試是一種你可能聽說過的軟件測試形式,即使你不是這個行業的人。與前面提到的其他測試不同,這種類型的測試通常由客戶和其他第三方終端用戶執行。

實際上,這是在産品最終發布之前,在真實環境中對軟件的一次測試。進行此類測試是為了确保軟件沒有重大故障,并确保軟件滿足所有要求。

最終用戶通常會被鼓勵向開發人員提供反饋,并為潛在的改進提供建議。一旦編譯完成,開發人員就會在最終發布之前執行任何改進。

軟件測試中的系統測試包括什麼(什麼是軟件測試)3

9. 端到端測試

這種形式的軟件測試用于測試應用程序從開始到結束的流程是否按預期運行。它的目的是識别系統依賴關系,并确保在各種系統組件和系統之間維護數據完整性。

它通常會測試整個應用程序的關鍵功能,比如與其他系統、接口、數據庫、網絡和其他應用程序的通信。

10. 可用性測試(用戶體驗- UX)

顧名思義,這個軟件測試檢查它的實際用戶友好性。應用程序流也被稱為UX,它是用來測試一個沒有經驗的新用戶是否能夠理解這個應用程序。

它還可以測試任何幫助函數,以查看它們是否有用,并檢查系統導航是否符合邏輯。

非功能性的軟件測試

軟件測試中的系統測試包括什麼(什麼是軟件測試)4

下面是一些最常見的非功能軟件測試形式。

1. 性能測試

性能測試,有時包括壓力或負載測試,是一種重要的非功能軟件測試形式。

它檢查系統是否滿足定義的性能參數,它使用各種工具。

2. 壓力測試

如前所述,壓力測試可以作為一般性能測試的一部分執行,也可以作為獨立測試執行。正如名字所暗示的,這測試軟件的極限,其定義的性能和超越。

一旦超出了正常的性能預期,它會有效地嘗試發現系統如何以及何時會失敗。這樣的測試通常在高負載下進行,比如輸入超出存儲容量的數據,進行複雜的數據庫查詢或對系統的連續輸入,或者測試數據庫負載。

3. 負載測試

負載測試是非功能軟件測試的另一種形式,它檢查當多個用戶同時訪問程序時系統的行為。它與多用戶系統最為相關;通常是使用客戶機/服務器模型構建的,比如web服務器。

可以使用JMeter、LoadRunner、WebLoad、Silk performer等工具執行負載測試。

4. 安全性測試

安全測試,顧名思義,就是檢查任何一個軟件是否容易或難易被黑客攻擊。它通常由專業測試人員(如白帽黑客)執行,用于從内部和外部威脅中找出軟件的優勢和劣勢。

“這一測試包括軟件在多大程度上能夠抵禦惡意程序和病毒,以及授權和認證過程的安全性和強度。”

它還檢查軟件如何應對黑客攻擊或惡意程序,以及在遭受黑客攻擊後如何維護軟件的數據安全。”

5. 容量測試

容量測試是另一種非功能性軟件測試,通常由性能測試團隊執行。被檢查的軟件暴露于大量數據中,測試将檢查軟件的行為和響應。

它用于評估這樣的數據流入對性能和處理時間有什麼影響(如果有的話)。

6. 兼容性測試

這種形式的軟件測試驗證軟件包在各種不同環境中的行為。這将包括web服務器、硬件和網絡環境等内容。

這種形式的測試檢查它是否可以運行在不同的配置、數據庫等以及它們的不同版本(如果适用的話)上。

7. 安裝/卸載測試

顧名思義,這種形式的測試執行對全部、部分或升級安裝和卸載的檢查。它通常在使用各種不同硬件和軟件環境的各種操作系統上進行測試。

8. 可靠性測試

這種形式的操作系統軟件測試評估了一個軟件在特定時間内跨多個環境進行無故障操作的概率。

“可靠性測試是為了确保軟件是可靠的,它滿足它的目的,在特定的時間内,在給定的環境,并能夠呈現一個無故障的操作。”-軟件測試幫助。

9. 恢複測試

恢複測試是另一個重要的測試,用于查看在系統崩潰或其他災難發生後軟件的特定部分的行為。它檢查有問題的系統在此類實例發生後能夠恢複的程度。

這類測試在實踐中相對簡單,可以簡單地通過斷開網絡電纜來迫使連接斷開。測試的目的是看軟件是否能夠恢複到故障之前的狀态并繼續運行。

10. 遵從性測試

法規遵循測試,也稱為一緻性測試、規則測試或标準測試,是另一種常見的軟件測試。此測試将确定系統是否符合設置的外部标準。

這些測試的内容可能會根據所應用的标準的要求而有所不同。

11. 本地化測試

最後,本地化測試是一種軟件測試形式,用于評估其針對不同文化或設置的行為。它的主要目的是檢查一個特定的地理位置在語言和文化方面是否合适。

換句話說,它是為目标語言和國家定制軟件應用程序的過程。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved