官术网_书友最值得收藏!

1.1 自動化測試與產品質量的關系

測試人員思考最多的問題恐怕就是如何才能發現更多更有價值的Bugs,如何才能更好地避免產品質量上的風險。談到自動化測試這個話題,出于職業本能,人們往往會第一時間想到:自動化測試如何保證產品質量?

別著急,在提供結論之前,需要有追本溯源的過程。面對這樣的問題,先想想看:測試如何保證產品質量?

對于測試與質量問題的關系存在兩種極端認識:一種是“測試無用論”,認為開發人員就可以搞定所有測試工作,不需要專業測試人員;另一種認為“待測產品的所有問題都應該被測試人員發現”。

對持有這兩種觀點的人,筆者都不能茍同。我們可以把測試人員比作醫生,拿醫生治病來舉例。第一種人否定測試人員的價值,好比此人只是小病小疼,自己吃點藥就搞定了,不需要看醫生;又或者這人接觸過的大多是庸醫,根本沒有提供過有效的幫助,以至于他對醫生失去信心。第二種人把產品質量的全部責任都壓在測試人員頭上,好比他以為醫生是萬能的,能發現他身上所有的問題。

正因為沒有放之四海而皆準的測試,測試人員本身也面臨不少誤解,那么對于“自動化測試如何保證產品質量”這種問題就更要留個心眼。筆者非常認同Cem Kaner教授的觀點,“軟件測試是一種技術調查,目的是向相關干系人提供產品相關質量的實驗信息”(http://testingeducation.org/wordpress/)。測試人員不是“質量衛士”,測試既不會提高質量,也不會降低質量。盡管有不少公司會把測試人員稱為QA(Quality Assurance),直譯就是“質量保證”,但質量是構建出來的,不是測試人員測出來的。因此,測試人員不能保證產品質量,質量保證應當來源于整個產品團隊。

既然通過測試不能保證質量,靠自動化測試更無法保證。

綜上所述,關于自動化測試保證產品質量的說法,本身就是個偽命題。

那么,應該如何看待自動化測試與質量的關系?

Cem Kaner的觀點給了我們不少啟發,筆者認為測試是一項服務性的工作,測試人員在經過一系列信息收集、技術調查后,應當對產品提供質量反饋。而合理有效的自動化測試能夠快速獲得反饋,從而幫助產品快速迭代。這正是自動化測試的價值所在。

本書在介紹測試技術之余,還在第7章介紹了BDD方法,第8章介紹了Jenkins使用的知識,意在強調只有團隊協作才能讓自動化測試的價值最大化。至于如何保證質量,則屬于“質量管理”這一領域的內容,涉及質量目標的制定和指標框架的搭建等方法論,這里就不展開討論了。

主站蜘蛛池模板: 临海市| 光山县| 平定县| 安西县| 溧阳市| 平湖市| 囊谦县| 化隆| 竹溪县| 新昌县| 马鞍山市| 永定县| 阿坝县| 巨野县| 建昌县| 女性| 彭山县| 遂昌县| 巧家县| 天台县| 巴南区| 汾阳市| 孟津县| 儋州市| 安庆市| 万载县| 台东市| 陇南市| 易门县| 图们市| 密山市| 哈尔滨市| 沅江市| 富顺县| 云林县| 梁河县| 镇雄县| 乐昌市| 高唐县| 泰州市| 敦化市|