专访Connolly:为什么我们需要手动回归测试宣言?
在2018年秋季在線測試會議上,Brendan Connolly指出回歸測試的自動化并非總是最佳的解決方案。由此,他提出了“手動回歸測試宣言”(Manual Regression Testing Manifesto),并展示了如何利用該宣言區分功能測試和回歸測試,以及決定測試是否需要自動化。
Brendan Connolly在2018年秋季舉行的在線測試大會上提出,回歸測試的自動化并非總是最佳的解決方案。由此,他提出了“手動回歸測試宣言”(Manual Regression Testing Manifesto),并展示了如何利用該宣言區分功能測試和回歸測試,以及決定測試是否需要自動化。
手動回歸測試宣言參照了敏捷宣言的理念。它是針對測試目的的公開宣言,也是用于討論測試質量、探索測試人員貢獻方式的框架。
Connolly指出,人們通常認為“測試”問題(尤其是回歸測試問題)似乎需要一些“銀彈”(即某種極端有效的方式)才能解決,例如購買適用的工具、自動化全部測試、引入人工智能解決方案等。在Connolly看來,這些做法并非完全沒有價值,只是我們是在嘗試使用瀑布式軟件開發時期人們所反對的那種說明性的測試方法。
手動回歸測試宣言提出了以下五個理念:
- 行為高于缺陷;
- 一致性高于正確性;
- 實現高于意圖;
- 整合性高于復雜性;
- 共識高于完備。
Connolly指出,與敏捷宣言一樣,并不是說右邊的部分沒有價值,只是我們更注重左邊的部分。
Connolly說,敏捷革命展示了溝通和協作的價值,而不是讓人們采用更多的流程和工具。測試和QA領域也是一樣,只是實現起來很難,因為測試過程是環環相扣的,難以用適當的用語描述它。
Procore Technologies公司高級質量工程師Brendan Connolly在2018年秋季的在線測試大會上做了演講。在演講結束后,InfoQ采訪了Connolly。
InfoQ:為什么我們需要手動回歸測試宣言?
Brendan Connolly:傳播促成我們成為測試人員的技能和意圖是展示價值的關鍵,而頗具挑戰之處在于如何表達測試及其預期產出在整個軟件開發生命周期中是如何變化的,以及為什么會發生這些變化。
回歸測試是測試人員和管理人員常會產生誤解的一個領域。通常的建議是通過自動化消除此類痛點,但并非所有的場景都能自動化,或是存在投資回報率不佳的問題。這是因為有些回歸測試并不適合進行自動化。因此,為了能清晰明了地開展交流,我認為制定公開宣言會有所幫助。
InfoQ:如何解釋“行為高于缺陷”(Behavior over Bugs)這一理念?
Connolly:如果測試人員未找出軟件缺陷,他們就很難有為項目作出貢獻的成就感。對于測試新手尤為如此。
功能測試是深挖問題和錯誤的時間?;貧w測試旨在最大限度降低中斷,我們并不希望新功能對已有功能產生意外的中斷。一旦測試人員開始回歸測試以便查找錯誤,那么他最終需要花費大量的時間重新測試功能。根據我的經驗,這更有可能發現一些與最新的代碼變更毫不相干的小問題,也可能會重新發現一些團隊曾經選擇忽略的舊問題。
即便測試人員發現了一個缺陷,除非是一個嚴重的缺陷,并且與當前的變更切實相關,否則只是在引入干擾。任何在回歸測試過程中發現的錯誤都需要根據版本的發布壓力做出權衡。這可能會降低測試人員在團隊中的信任度,因為人們會認為測試人員似乎更專注于發現軟件缺陷,而不是如何向客戶提供新功能。
更為重要的是,我們應確保在做出變更時,客戶所期望和依賴的行為仍然存在。
InfoQ:如何解釋“共識高于完備”( Common over Complete)這一理念?
Connolly:在測試人員職業生涯的某個時刻,他們都會被問及他們是否測試過所有的東西。事實上,對于任何一個項目,測試人員必定會做出一些權衡。測試人員所做的是盡量在可用的時間內最大程度地降低風險。
回歸測試并非要確保所有的邊界條件都經過驗證,也并非意在確??捎眯?、性能或安全性。雖然這些方面都十分重要,但這些測試不應該發生在版本發布之時。
一旦測試人員接受了完備測試這一重擔,也就承擔了各種責難。作為測試人員,我們需要將討論引導到如何制定一套完整的策略,即如何用回歸測試組件確??蛻舻暮诵捏w驗與設計的一樣。
InfoQ:如何使用該宣言改進手動回歸測試?
Connolly:手動回歸測試宣言提供了多項內容。首先,它給出了區分回歸測試和功能測試的明確界限,這通常是測試人員和管理層所面臨的一個挑戰。 宣言的每個核心原則都聚焦于兩個具備價值的測試要素上。通過對比兩個要素的相對價值,我們就可以定義整個發布周期的測試期望。我們并不是要區分兩個要素孰優孰劣,而是給每個要素一定的時間和空間,讓測試人員去指出其中的差異。
其次,宣言提供了一個用于討論測試質量、探索測試人員貢獻方式的框架。人們很容易將測試人員視為惡意的軟件破壞者,而實際上,我們可能會和軟件開發人員一樣甚至比他們還要喜歡我們所測試的軟件。為確保軟件正常運行,即便我們與開發人員之間毫無聯系,我們也會花費大量時間測試代碼。團隊花了大量時間討論代碼標準和實踐,但是代碼本身比測試和質量更加真實和可度量。測試人員之間并不存在什么公共語言,所以,每個測試人員都必須能夠表達代表自身動機的想法。
我希望該宣言能激發測試人員去思考目前在做的事情,搞清楚質量對他們以及處于軟件開發生命周期不同階段的團隊來說意味著什么。這樣他們就能夠更輕松地表達他們想要完成的事情,然后更好地向團隊提出問題。
查看英文原文:?The Manual Regression Testing Manifesto
總結
以上是生活随笔為你收集整理的专访Connolly:为什么我们需要手动回归测试宣言?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 看看HashSet源码
- 下一篇: vscode 免费视频教程