1. 程式人生 > >自動化測試用例設計三原則

自動化測試用例設計三原則

命令 進行 test 服務 更換 打印 抽取 自動 持續集成

今天總結一下在做自動化測試中測試用例設計的一些建議,總結為三原則:

1. 保持Case之間的獨立性

case獨立性就是能夠獨立運行,當我們有隨機的跑其中某個Case或亂序的跑這些Cases時,測試的結果都應該是準確的。

比如在執行過程中用例的運行環境取決於其他測試用例的執行狀態,那麽,其中的測試用例不能復用時,與之相關的測試用例的可復用性也不復存在。

有時候我們碰到在本地沒問題,但是在server上跑有問題,大概率就是這個原因導致的。

2. 提高Case執行效率

測試人員能在最短的時間內執行測試覆蓋,不僅能提高團隊的工作效率,也可增強團隊的信心

a.如果有對執行條件的檢查,若檢查失敗,則盡快退出執行;
b.將數據準備或環境清除等工作抽取成關鍵字放到更高的層級中,可以合理利用TestNG的註解來實現;
c. 用例中盡量少的出現sleep,建議用"wait until ..."來代替;
d. 可以采用並發執行用例的方法來提升效,這需要原則1case的獨立性來做保證。

3. 減少case的依賴性

依賴包括執行環境,測試對象,外部設備

執行環境:

你在本地上使用Webdriver框架編寫、調試用例後,上傳到代碼塊,然後其他同事拉取你的用例在他的本地運行,隨後又被部署到持續集成服務器上。所以你編寫的用例時就要盡量避免使用不同平臺的庫或者shell命令。這個我們一般可以用Maven來進行依賴管理。

測試對象:

使用Page Object模式,主要是將每一個頁面抽象成一個頁面對象類,把該頁面中的元素定位,元素操作,業務流程等都封裝在該類的方法中,編寫用例時,直接已面向對象的思想調用該頁面類中的方法。同時,當頁面元素屬性變化時,只需要更改頁面對象類即可。

外部設備:

有時候被測系統可能需要和硬件交互,外部設備可能會升級或更換,那我們可以將外部設備的操作從測試用例中抽離出去,封裝成測試庫,秩序維護這個測試庫就可以了。比如打印功能。

自動化測試用例設計三原則