阿里自動化測試工程師 在測試效率提升全過程

測試能力分層的組織架構下,一提到效率提升,可能大多數人,首先想到的是測試開發團隊,亦或是成敗在于此。假如我們也是這樣想,我想我們可以嘗試換一個角度,也許會有更多的收獲。

兩個必要問題

解決效率問題,其本身包含兩個必要問題,二者缺一不可:

1. “適不適合”做

2. “能不能夠”做

“適不適合做” 衡量的是意義價值,即必要性,引入自動化測試是為了能夠切實解決某些問題,而不是單純為了自動化而做自動化。

“能不能夠做”衡量的是能力水平,即可行性,重點關注的是具體開展過程中的自動化設計、開發、維護、使用等問題,如何通過更優雅的方式降低開發、維護成本,比如數據驅動等等。

結合以往經驗,在只解決上述問題中的其一或者二者不解決的情況下,可能會出現以下情況:

只解決“適不適合做”的問題,可能會導致:

沒有掌握完整的自動化測試技術棧,開發成本高。

沒有選擇合適的框架或解決方案,無法從整體上降低用例的編寫、維護成本,在持續投入下,投入產出比大概率為負。

只解決“能不能夠做”的問題,可能會導致:

傳統瀑布開發模式下,迭代周期長,次數少。幾個版本下來,等同測試覆蓋下,自動化測試投入可能大于手動測試投入。

頻繁的需求變更,自動化用例維護成本高,自動化測試逐漸廢棄。

“適不適合做”、“能不能夠做”的問題都不解決,可能會導致:

如果是這樣,那這只能是 “鬧著玩”,也許曇花一現、也許半途而廢。

因此,在我們的自動化開展過程中,引入了自動化需求澄清環節,主要研判的就是上述兩個問題。這個過程,業務方作為需求提出方主要研判“適不適合做“的問題,測開方作為需求承接方主要研判“能不能夠做的問題”,根據以往經驗,前者問題難度更高更復雜。

因此,我們不難發現,要做到有效的提升、這兩個問題是繞不過去。在解決這兩個問題的前提下,我們才能夠正確地明確其目標,才有了目標才能正確制定其具體實施方案。

為何而做(目標度量)

接下來,聊一聊目標,自動化測試度量指標,我們近幾年嘗試過很多種維度去度量,例如,從自動化用例數量、到覆蓋率、再到ROI、效率提升率,我們發現這些度量維度不難計算,通過自動或手動統計的方式都可以統計計算出結果,但度量數據反映的情況與實際情況存在較大的差異性(效率、質量),例如 度量數據呈現出的效率提升率在變高,但實際業務測試周期似乎沒有變化,等等。

那么這個問題出在哪里?—— 當我們與真相一步步靠近時,這其中每一步都是有意義的。

問題也許出在 “目標” 本身,目標即導向。那么效率提升的本質是不是“用例數量多“、”覆蓋率多”、”ROI高”? 好像也并不是,差一點意思。我認為本質應該是簡單的、直接的 :

在定時任務的背景下,快 → 時間縮短

在定量任務的背景下,快 → 人數減少

我們可以嘗試以效率提升最本質的目標作為驅動,也許將更有效、更直接。

在具體指標設定時,除了“定性”、不可避免的還要“定量”,“定量”一方面是為了度量其絕對值,另一方面是與其“定性”相互佐證。

定性: 時間縮短 → 例如,平均項目測試周期縮短 X % 。

定量: 累計節省人力投入(或累計節省額外人力投入) → 例如,累計節省額外人力投入X 人月。

如何去做

這是萬事俱備,只欠東風的一步,當然這也是最重要的一步。有一些項目可能會有疑問,上述的問題,我們都一定程度解決掉了,但自動化測試仍然沒有達到預期的效果。

大概可能是以下原因導致:

缺乏整體測試用例執行設計,用例覆蓋目的性弱,具有隨機性、隨意性,低覆蓋,無法真正的縮短執行效率。

只做到了自動執行,但沒有做到自動驗證,無法真正的在保證質量的提前下,提高執行效率。

“自動化孤島”,缺乏持續性、未引入到流程當中。

“缺乏整體測試用例執行設計”的問題 解決思路

我們在手動執行測試用例時,為了縮短執行時間,避免某些操作的重復執行,通常,我們會先設計執行場景,一個場景下,盡可能根據執行順序,覆蓋更多的測試用例。

比如,結合上述業務流程Demo,我們需要自動化測試覆蓋所有功能服務接口,我們的會怎樣設計測試用例?從單接口的角度還是場景的角度?

對于這種包含業務流程或是用戶使用場景的功能測試分析,建議從場景的角度去覆蓋,通過場景的流程分解,逐步拆分,然后對拆分后的流程環節進行測試分析,提取測試點。

最后,根據流程串聯各個環節的測試點,最大程度地復用流程,降低測試覆蓋過程的重復性操作,以覆蓋一個場景為最小有效單位。例如,1-2-4-5-7, 1-3-6-7 。

假如,我們在自動化覆蓋的時候,不按照場景的方式,單個接口逐一覆蓋,此時若“關注商品”暫時沒有進行覆蓋,還是采用手動執行的方式驗證該功能,單從自動化覆蓋率、用例數量等指標看,與場景的方式無異。但在實際手動執行時,會發現在有意或無意地在操作自動化已經覆蓋的“查詢商品”等功能,那么從提效的角度來看,手動執行自動化已經覆蓋的測試點,相當于自動化的提效作用被抵消。

因此,無論我們在冒煙測試、回歸測試的用例設計中,盡可能保障覆蓋功能點在操作上的閉環,以覆蓋一個場景為最小有效單位,這個場景的定義就是連續性操作的閉環,可能是N個功能、也可能是一個功能。

只做到了自動執行,但沒有做到自動驗證

翻閱平臺的自動化用例,不乏只有驗證響應狀態的用例出現,也許是在手動測試的時候,只是關注了下狀態,剩余的一掃而過。

一條嚴謹有效的測試用例,需要對響應內容全面覆蓋,考慮到響應內容可能存在一些非冪等性的屬性,比如當前時間,目前提供的關鍵字中,也靈活的支持過濾掉哪些屬性不校驗的功能。

避免在提升效率的過程中,忽略了質量的基本要求。這也是今年自動化平臺需要延展的功能—— 測試用例設計風險預警。

“自動化孤島”,缺乏持續性、未引入到流程當中。

這個大家應該都明白,那就是引入到持續集成中,是最直接、有效的解決方法。

同時,在流程中的提測環節、在系統集成前,做好自動化測試通過率、代碼覆蓋率的卡點。

最后

自動化測試,起初的定義是用于回歸測試等操作具備重復性,且對象具備穩定的場景中,主要考慮到功能的穩定性和投入成本的問題,前期項目功能變更的風險較高、同時周期往往緊張,自動化覆蓋存在一定的開發、維護成本。

這其中的主要矛盾是“成本問題”,試想自動化覆蓋成本在不斷降低時,矛盾在逐漸弱化,那么這個局限性就會被打破。自動化測試同樣可以用于首輪測試、甚至是在與研發功能設計有良好的契約下,在提測前也可以完成。

上述,我們在探討自動化測試如何做到有效的效率提升,除此之外,還可以去嘗試結合代碼覆蓋率,不斷提高自動化覆蓋率;結合代碼改動范圍,精準運行對應測試用例,從機器逐漸演變成智能...

看了這篇內容后,堅信以下兩件事,也會對你的自我提升有一定的幫助:

1、點贊,讓更多人能看到,同時你的認可也會鼓勵我創作更多優質內容。

2、要讓自己變得更強:想想,假如你是要在測試這個行業長期做下去,你的工作經驗和測試技術是絕對不夠的,你需要提升,你需要豐富你的技術棧!還等什么!

最后:【可能給你帶來幫助的教程】

這一些資料,對做【軟件測試】的朋友而言應該是較為完整了,這類學習資料也陪伴我走過了最艱難的路程,希望也可以幫助到你!萬事要盡早,尤其是技術行業,一定要提升技術功底。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,702評論 6 534
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,615評論 3 419
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,606評論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,044評論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,826評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,227評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,307評論 3 442
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,447評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,992評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,807評論 3 355
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,001評論 1 370
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,550評論 5 361
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,243評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,667評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,930評論 1 287
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,709評論 3 393
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,996評論 2 374

推薦閱讀更多精彩內容