1. 程式人生 > 其它 >不要為了測試寫一個新系統

不要為了測試寫一個新系統

  前幾天聽到了這樣的問題:

  “你們做自動化測試的時候,是怎麼把預期結果算出來的?”。——按照我的經驗,都是手工或Excel算出來的。

  “為什麼不在測試工具中實時計算?”——按照我的經驗,測試寫不出一個異構的新系統。

  測試過程中計算預期結果,可能是出於下面的考慮,但每一種都不適合。

  1)被測系統的資料不受控,沒有穩定的預期結果。——用例的測試目的應該是預先定義的,動態的預期結果無法覆蓋到原定測試點。除非是做介面測試等強調輸入組合,可以通過大量用例來提高輸出結果覆蓋率的情況。

  2)被測系統不穩定,變更多。——這類系統可能還不適合做自動化迴歸測試,測試範圍和輸入、輸出都不確定,也無法在測試用例中實現計算邏輯。

  3)邏輯複雜,計算預期結果比較困難。——如果測試人員都可以輕易實現這些複雜的邏輯,那還要開發做什麼?即使能夠實現,必定付出比被測系統研發更高的代價。應該分層測試,逐層校驗中間結果,降低每一層測試的複雜度。

  4)用例之間相互影響,正確性依賴執行順序。——在用例的前置條件、後置條件中進行處理,採用不同的資料集,拆分測試序列等都可以降低相關性。否則增加新用例時,實時計算的複雜度會持續增加。當然,一些邏輯簡單或固定公式的計算,可以方便的通過關鍵字實現。

歡迎大家評論交流,發現博文中存在的問題一定要留言哦