可以獲得什麼?
瞭解到什麼是系統測試,以及可以如何協助我們提升品質。
系統測試是什麼?
系統測試(System Testing)是軟體測試過程中的一個階段,可以算是工程師內部最後一關。其主要目標為確保整個應用程序或系統的完整性。當軟體系統運作時,常常跟不同部分和組件協同工作,而這時就需要驗證其是否能正確運作,符合功能需求並達到預期的性能和品質水準。
在進行系統測試時,不會測試每個小功能,會測試更高層級,涵蓋面更廣的測試,它不僅僅是功能間的測試,甚至系統間的測試、系統成面的測試都是屬於系統測試的一環。
系統測試的特點
在作系統測試的時候,已經進入開發晚期,甚至可以說已經開發完成,即將要給客戶進行驗收。因此在系統測試會有幾個特點與測試目的:
- 測試全系統:系統測試不僅僅關注單個模組或元件,它測試整個軟體系統,包括所有模組、介面和外部服務的整合。這有助於確保整個系統的一致性。
- 功能驗證:系統測試的一個主要目標是確保軟體系統的各個功能按照需求正確執行。常常使用測試案例(Test cases),以確保功能的正確性。
- 性能測試:除了功能性驗證外,系統測試還包括性能測試,評估系統的性能、效能和可擴展性。這包括評估系統的響應時間、吞吐量和資源使用情況。
- 壓力測試:壓力測試是系統測試的一部分,用於評估系統在極端條件下的表現,例如高負載情況或資源短缺。這有助於確保系統在壓力下能夠正常運作。
- 安全測試:安全測試用於識別系統中的安全漏洞和弱點,以確保系統不容易受到攻擊或數據外洩。
- 回歸測試:當進行系統測試時,還需要進行回歸測試,以確保對系統進行的任何更改不會對現有功能造成負面影響。
使用的場景
在開發完畢後,也進行整合測試,這時 QA 就會開始實行系統測試,確認各系統可以完成自己的任務,確保所有的作品都可以滿足客戶的期待。
範例
情境:
公司推出一個新買股票的 app,希望可以看盤看的慨清楚與簡單,並且提供快速的下單與查帳務。為了要讓客戶體應更好的使用者體驗,他們決定進行測試,確認這個 app 可以滿足我們的目標。
作法:
- 功能測試:QA 團隊進行各個功能的檢測,確認所有的功能運作順暢。
- 性能測試:模擬多個同時用戶訪問網站的情況,以評估網站的性能和響應時間,可以知道我們 app 在正常的操作下,可以達到怎樣的等級。
- 安全測試:QA 進行了安全測試,以確保 app 上沒有任何潛在的安全漏
- 壓力測試:在壓力測試中,QA 模擬了網站在高流量情況下的表現。他們確保app 在用 APIC 互相檢測,在處理多個同時訪問時不會崩潰或出現性能問題。
- 回歸測試:當開發團隊對網站進行了一些更改後,測試團隊執行回歸測試,以確保這些更改未對現有功能造成負面影響。
後記
測試的範圍與觀看的角度在這幾日逐漸不一樣,適合的角色也跟著不同。在【D4】的Unit testing 很適合開發工程師,因為單元測試可以協助剛完成的程式,而在整合測試和系統測試就開始由測試工程師進行檢測。工作逐漸越來越專業呢!
再次提醒:這測試階段分類不是絕對的喔!會因為各團隊狀況有所不同。
參考資料