什麼是軟體測試架構
圖2-1 不好的佈局決定著失敗
而如果換一個思路,進行不同的佈局,如圖2-2所示,不採用自然的豎直排序,而採用斜線排序,充分利用空間,而且進攻部隊前進的速度會大大降低,結果就很不一樣,遊戲者便能輕鬆過關。
圖2-2 良好的佈局是成功的一半
這裡的佈局,是指處理問題的全域性規劃、整體設計。全域性規劃如何、整體設計效果如何,自然關係到後面的整個過程,所以總會受到我們重視。
說到架構,我們會想到軟體架構,如C/S架構、SOA架構,甚至會想到以架構設計為中心的RUP。軟體架構的概念由來已久,軟體架構師的頭銜容易被大家認可,但“測試架構”的概念還不夠清晰,人家會有很多的問題要問:
什麼是測試架構?
測試架構對軟體測試有什麼幫助?
軟體公司需要設定“軟體測試架構師”職位嗎?
軟體測試架構師做哪些事情?
當人們知道微軟公司、阿里巴巴集團等設有“測試架構師(Test Architect)”職位時,可能會驚奇地問:什麼? 測試團隊也設立“架構師”頭銜嗎?人們對開發團隊設立架構師已經比較習慣了,因為大家知道,在設計一個軟體系統時,需要考慮整個產品架構如何設計
、系統各個元件如何整合在一起、如何相互協調工作,而這些都需要“軟體架構師”來完成,但對測試團隊為何要設立“架構師”頭銜還是不夠清楚,主要是因為不瞭解測試架構從何而來。
在日常測試工作中,如何選擇測試工具和如何建立統一的自動化測試框架?這是經常困擾我們的問題。除此之外,我們還會碰到如下的一系列問題:
如何幫助開發人員提高產品設計和程式碼的可測試性?
如何找到更有效的辦法來設計測試用例?
如何完成複雜系統的非功能性(效能、安全性、相容性、可靠性等)測試任務?
如何通過分析系統測試結果,找出系統存在的問題?
能否對測試技術的發展趨勢做出正確判斷,從而更有針對性地提高測試團隊的技術能力?
舉例、暗喻
測試架構從何而來?其實它就是為了解決上述問題而產生的。從基本的觀點看,測試架構是由軟體系統技術架構和軟體測試框架(特別是自動化測試框架)構建的需求而定。這些需求,決定了以下從不同方面所形成的測試架構。
大家都能理解,越早進行測試,就能越早地發現缺陷,對提高產品質量、降低企業成本就越有利,更重要的是越能預防系統 設計時出現嚴重的缺陷。如果所設計的系統架構存在嚴重的缺陷,直到系統整合測試時才發現,所造成的返工將是可怕的。這就需要測試人員對設計進行復審、評 審。測試人員應參與系統架構及其元件介面等設計的審查,包括是否全面考慮非功能特性、各個特性的可測試性評估、設計的合理性等。
從軟體系統來看,如何驗證系統的效能、安全性、可靠性和可伸縮性等,例如網站能否支援擴充套件到100M的點選率,投票系統是否安全等都需要對系統架構進行分析,建立測試概念模型,從而科學、有效地完成認證。
現在的系統越來越複雜,其設計往往不是一蹴而就的,需要不斷地重構和優化,而這些工作是基於以前版本的測試結果(包 括發現的問題)來實施的。測試人員在完成系統測試後,可以通過對測試結果的分析發現問題,如系統效能瓶頸、安全漏洞等,進而可以對系統的效能、可靠性、安 全性等改善提出有價值的建設性意見。
在系統功能測試時,需要對功能進行合理的劃分、歸類,建立用例模型,設計合理的測試結構。
從測試工作自身來看,需要建立合適的測試管理系統,包括測試用例庫的設計、缺陷跟蹤機制等。
設計自動化測試框架,包括整合測試環境、測試指令碼分層處理、執行結果自動生成報告等。
掌握測試技術發展趨勢,研發新的測試方法,並藉助測試工具來實現,例如,在安全性測試上如何採用合適的模糊測試方法。
本文出自seven的測試人生公眾號最新內容請見作者的GitHub頁:http://qaseven.github.io/
相關文章
- 什麼是軟體測試架構師架構
- 軟體架構1.什麼是軟體架構架構
- 什麼是Poly軟體架構?架構
- 什麼是軟體架構(轉)架構
- 什麼是敏捷軟體測試敏捷
- 究竟什麼是軟體測試
- 軟體測試中的黑盒測試是什麼?
- 軟體測試是幹什麼的
- 1.2什麼是軟體測試?目的又是什麼?
- 軟體測試中的白盒測試是什麼?
- Parasoft軟體測試實踐:什麼是左移測試?
- 什麼是軟體架構設計?- Grady架構
- 軟體測試的目的是什麼?專業的第三方軟體測試機構起到有什麼作用?
- [原創]測試架構師是做什麼的?架構
- 探尋軟體架構的本質,到底什麼是架構?架構
- 探尋軟體架構的本質,到底什麼是架構架構
- 軟體測試的准入準出是什麼?標準是什麼?
- 軟體測評中心▏軟體功能測試和非功能測試分別是什麼?
- 軟體驗收測試之α測試和β測試分別是什麼?
- 什麼是軟體產品登記測試?
- 軟體測試的日常工作是什麼
- 是什麼殺死了軟體測試人員?
- 軟體測試培訓分享:效能測試的目的是什麼
- 什麼是軟體介面測試?權威第三方軟體測試服務機構有哪些?
- 軟體測試包括什麼?
- 軟體驗收測試是什麼?第三方軟體驗收測試有什麼意義?
- 什麼是軟體測試領域的 Flaky test?
- 賀炘:你的軟體測試基因是什麼?
- 自動化測試是什麼?什麼軟體專案適合自動化測試?
- 軟體自動測試架構設計架構
- 軟體測試架構師的職責架構
- 軟體測試工作的目的和原則是什麼?
- 好的軟體測試人員是什麼樣的?
- 軟體介面測試為什麼很重要,軟體檢測機構如何收費?
- 軟體測試真的有必要嗎?軟體產品測試的目的和意義是什麼?
- 軟體測試要學什麼(3)軟體測試流程詳解
- 務實的軟體架構師是什麼樣?(tpierrain)架構AI
- 軟體測試的目的是什麼?專業第三方軟體測評有什麼優勢?