ui自動化測試框架01(pytest+selenium+allure)
1、目的
- 我們的產品要能夠根據用例規定的操作回放模擬操作;
- 用例應該是既能夠單獨執行,也可以按指定順序集合執行;
- 如果希望達到無人值守的目的,那么郵件通知和CI必不可少;
- 我們肯定希望用例維護起來簡潔便利。
2、為什么選擇selenium
QTP太貴了,selenium是開源的
3、selenium和webdriver是什么關系?
selenium可以理解為一個工具集,包括IDE、WebDriver等。
這里稍微解釋一下,可以視為selenium打包了webdriver,而webdriver本身是一套操作瀏覽器的api協議規范。
第一個需求,我們的產品要能夠根據用例規定的操作回放模擬操作;已經確認了技術類型,我們接着看下面的需求。
第二個需求,實際上就是用例管理,一般而言各個語言都有自己的測試框架用於處理這些,python當然也不例外,py上的測試框架有unittest,pytest,nose等等,由於我們的需求各個框架基本都能滿足,所以直接選擇了py內置的測試框架unittest使用,如果想了解各大框架之間對比的話,可以點擊這里查看。
第三個需求,也就是無人值守。這里因為我們公司的ci工具是jenkins,所以就直接選定了用jenkins作為技術手段。
最后一個需求,實際上是一個很重要的優化點,如何讓用例維護簡單?這里其實是一個很彈性的選擇,我的選擇是只通過框架設計來達到,更好的選擇是把用例的描述規范化甚至脫離代碼層面,例如使用yaml來描述用例。
作者:Null_ice
鏈接:https://www.jianshu.com/p/a079a42806e1
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。