- Selenium自動化測試之道
- Ping++測試團隊
- 949字
- 2020-11-28 14:42:24
1.1 自動化測試與產品質量的關系
測試人員思考最多的問題恐怕就是如何才能發現更多更有價值的Bugs,如何才能更好地避免產品質量上的風險。談到自動化測試這個話題,出于職業本能,人們往往會第一時間想到:自動化測試如何保證產品質量?
別著急,在提供結論之前,需要有追本溯源的過程。面對這樣的問題,先想想看:測試如何保證產品質量?
對于測試與質量問題的關系存在兩種極端認識:一種是“測試無用論”,認為開發人員就可以搞定所有測試工作,不需要專業測試人員;另一種認為“待測產品的所有問題都應該被測試人員發現”。
對持有這兩種觀點的人,筆者都不能茍同。我們可以把測試人員比作醫生,拿醫生治病來舉例。第一種人否定測試人員的價值,好比此人只是小病小疼,自己吃點藥就搞定了,不需要看醫生;又或者這人接觸過的大多是庸醫,根本沒有提供過有效的幫助,以至于他對醫生失去信心。第二種人把產品質量的全部責任都壓在測試人員頭上,好比他以為醫生是萬能的,能發現他身上所有的問題。
正因為沒有放之四海而皆準的測試,測試人員本身也面臨不少誤解,那么對于“自動化測試如何保證產品質量”這種問題就更要留個心眼。筆者非常認同Cem Kaner教授的觀點,“軟件測試是一種技術調查,目的是向相關干系人提供產品相關質量的實驗信息”(http://testingeducation.org/wordpress/)。測試人員不是“質量衛士”,測試既不會提高質量,也不會降低質量。盡管有不少公司會把測試人員稱為QA(Quality Assurance),直譯就是“質量保證”,但質量是構建出來的,不是測試人員測出來的。因此,測試人員不能保證產品質量,質量保證應當來源于整個產品團隊。
既然通過測試不能保證質量,靠自動化測試更無法保證。
綜上所述,關于自動化測試保證產品質量的說法,本身就是個偽命題。
那么,應該如何看待自動化測試與質量的關系?
Cem Kaner的觀點給了我們不少啟發,筆者認為測試是一項服務性的工作,測試人員在經過一系列信息收集、技術調查后,應當對產品提供質量反饋。而合理有效的自動化測試能夠快速獲得反饋,從而幫助產品快速迭代。這正是自動化測試的價值所在。
本書在介紹測試技術之余,還在第7章介紹了BDD方法,第8章介紹了Jenkins使用的知識,意在強調只有團隊協作才能讓自動化測試的價值最大化。至于如何保證質量,則屬于“質量管理”這一領域的內容,涉及質量目標的制定和指標框架的搭建等方法論,這里就不展開討論了。
- Java持續交付
- Reactive Programming With Java 9
- Visual C++數字圖像處理技術詳解
- Learning SciPy for Numerical and Scientific Computing(Second Edition)
- 焊接機器人系統操作、編程與維護
- SQL Server與JSP動態網站開發
- UVM實戰
- Haskell Data Analysis Cookbook
- 鴻蒙OS應用編程實戰
- Python 3 Object:oriented Programming(Second Edition)
- Building Business Websites with Squarespace 7(Second Edition)
- Python計算機視覺與深度學習實戰
- Java Web入門很輕松(微課超值版)
- Unity虛擬現實開發圣典
- Learning jqPlot