自動化案例很多,執行時間很長,該怎麼最佳化?

露娜要拿蓝啊發表於2024-05-14

先說一下背景,
目前做的專案,現有自動化案例數約 2w 條。
然後每天凌晨會執行自動化構建,跑這個全量自動化案例,到最後測試報告出來,中間大概需要 10 個小時,也就是平均一個案例執行時間約 2s 左右。
有的時候由於環境等各類問題,當天的日構建會執行失敗。如果遇到需要發版,想要快速得到一個自動化結果就比較困難

對於這個問題,目前想到的幾種方法

  1. 對自動化案例進行全面的梳理調整,最佳化耗時長的案例。
  2. 準備多套測試環境,把任務進行拆分到多套環境執行
  3. 單個環境,並行執行。

對於這幾個方法的分析和想法:
第一個方法的話,遲早要做,需要大約團隊的人投入約一週的時間來進行分析和調整,可能可以提升大約 30%。不過目前暫時沒有這個時間和人力投入。
第二個方法,相對來說比較簡單粗暴。但是案例中涉及到的系統較多,如果進行拆分執行,可能至少需要兩套完整的測試環境。目前也不太有這個條件。

我個人最傾向於第三個方法,只需要單個環境就能做。但是並行執行,目前看最難得點就是在並行上。舉個例子, A 案例中前置設定系統引數 B=0,而 B 案例中,又設定了系統引數 B=2,那這個對於測試結果來說是有影響的。 如果需要完整的分析測試案例之間的相互影響面來說,這個的工作量可能會比第一個方法又要更加耗時,並且工作難度也更加大了。

之前也考慮過一種方法,透過工具,執行案例後,分析每條案例涉及的資料表,然後將案例和這個涉及表進行繫結,以此來判斷兩條案例之間的相互影響關係。這個方法也存在一個問題,當案例發生變更時,他的影響範圍可能也發生了改變。即之前涉及的表為 A、B、C,現在變成了 A、B、D,似乎又需要再分析一遍這個案例的關聯關係。

以上是我的一些想法,由於接觸的公司較少,網上也沒有找到一些現有的例子,所以特此請教各位大佬,對於日益增多的自動化案例,如何做到高效快速執行?
望各位不吝賜教

相關文章