4 個最常見的自動化測試挑戰及應對措施

陈哥聊测试發表於2021-11-19

有人說:“雜亂無章的自動化只會帶來更快的混亂。” 不僅更快,而且是更嚴重、更大的混亂。如果使用得當,自動化可以成為測試團隊中令人驚歎的生產力助推器和系統的質量增強器。自動化測試的關鍵是要正確運用,這是初始最困難的部分。下面,我們會了解最常見的自動化測試挑戰以及應對措施。

挑戰 1:獲得管理層的批准

跟任何公司部門一樣,員工總要知道預算允許和不允許的東西。測試人員可能已經知道自動化在商業和技術兩方面的優勢(縮短上市時間、增加測試覆蓋度和準確性、降低每小時的測試成本、更快發現錯誤等),但是測試人員怎樣說服財務部門和軟體開發負責人,為自動化測試爭取必要的時間和資金?

“自動化測試能提高生產力和準確性,這是必須制定商業案例的地方。單個缺陷的成本……可以抵消一個或多個工具授權的價格。” ——Randall Rice

我們同意 Randall Rice 的觀點,即自動化可以收回成本。為了向管理層證明財務收益是可觀的,可以向他們展示對自動化測試投資回報率所做的簡單細分。對其他人、其他利益相關者坦誠公開也很重要,不要隱瞞自動化前期工作和資源需求大的事實。

挑戰 2:選擇並使用合適的工具

因為種種原因,許多團隊沒能成功透過這個階段。他們可能是不瞭解特定工具的專業知識、找不到理想工具、工具集覆蓋不夠廣等等。
如果在怎樣使用工具這方面沒有足夠基礎知識,可以有以下幾個選擇:

  • 參加線上課程
  • 讓工具的製造者來進行培訓
  • 聘請顧問以更好掌握
  • 外包

如果現有的工具不能滿足你的需求,那就考慮找一個多工具的解決方案。 記住,不可能完全測試所有內容,但可以使用工具去測試最重要的部分。

最後,如果工具花費超出預算,就快速進行成本與收益分析並展示出來。這樣可以衡量之前錯誤造成的損失,並能展現如果使用該工具可以省下多少時間和金錢。

挑戰 3:確定啟動策略

好的,現在已經擁有了可以開始自動化的所有工具及支援,但是到底把什麼東西自動化了?又是怎樣做的?這些工具本身並沒有告訴你要自動化什麼,就像新手父母發現他們的小孩沒有帶著育兒手冊降生一樣叫人沮喪不安。是會培養出一代優秀的自動化測試,還是會被它所破壞再無法管理?當然了,我們肯定希望是前者!但實際上根本沒有辦法把所有事情都自動化,所以必須具有戰略眼光。可以使用兩種方法來幫助解決此問題:基於風險的測試和自動化金字塔。

基於風險的自動化測試

它優先測試最有失敗風險的元件,如果發生所述失敗,這些元件也會帶來最大的負面後果。在此處需要考慮:

  • 潛在錯誤的經濟影響
  • 失敗的機率
  • 服務級別協議 (SLA)
  • 有無財產危險

這應該為你提供了一個好方法來確定自動化測試用例的優先順序別。

自動化測試金字塔

強烈推薦的另一種方法是遵循自動化金字塔。在最近的一篇文章中,對這個主題有了更廣泛的討論,這裡進行簡單概述。

冰淇淋蛋筒嚐起來甜美誘人,但採用冰淇淋蛋筒方法可能會破壞自動化的程序!遵循冰淇淋蛋筒方法將導致高度的錯誤率,因為它強調 UI 級別的自動化,而 UI 級別使用的是更易被破壞的測試。但如果把精力投入於自動化單元測試,那麼在軟體開發過程中,幾乎可以馬上發現錯誤、消除錯誤。

挑戰 4:設定對自動化的現實期望

無論你的工具和流程多麼出色,要記住測試永遠不會完成。自動化測試不是解決漏洞百出的系統的靈丹妙藥,不應該代替非自動化測試,而應當與非自動化測試結合使用。有一些測試根本無法自動化,但也有一些自動化測試可以發現其他方法無法發現的錯誤。

自動化測試實際上只是自動檢查系統,而仍然需要人工進行非自動化測試。此外,請記住,測試的價值來自它提供的資訊,而不是執行的測試數量或頻率。我們最關心的獲得正確資訊,以便在提高系統質量時做出最佳決策。

確保團隊和管理層同意並理解自動化方案的預期結果,這樣大家才能達成共識!

相關文章