自動化測試面臨的問題
1、如何組織大量自動化用例
2、如何合理的進行初始化清除
3、如何批量篩選待執行的用例
4、如何輸出清晰的測試報告
解答:由python編寫的通用型自動測試框架
框架:實現特定需求的軟件的解決方案的工具包
自動化測試框架的選型
1、unitest
python內置庫
測試名以test開頭,初始化清除支持單一
2、pytest
適合規模小,復制度比較低的項目
輸出漂亮測試報告需要結合其他工具
3、NOSE
自動嗅探所有以test開頭的文件和用例
4、robotframe
優點:它定義了靈活且易理解的測試用例執行控制(包括初始化和清除環境)
它可以方便挑選要執行的用例和套件(名稱、標簽過濾)
它有清晰的日志和報表功能,讓QA和manager可以清除的查看測試執行結果
特點:A、 表格式語言編寫
B、 關鍵字(keyword)形式驅動
a、標准庫提供了常用的功能
b、第三方擴展庫
c、開發者根據產品自動開發庫
自動化框架、庫開發者
自動化用例開發者
RF結構圖
環境安裝——運行環境
1、RF安裝
pip install robotframework
2、seleniumlibrary
支持selenium 自動化的RF擴展庫
pip install robotframework-seleniumlibrary -U
3、Pycharm編寫
A、安裝插件Intellibot 支持語法高亮
robotframework 格式語法如下:
*** Test Cases ***
百度搜索郵箱
Open Browser http://www.baidu.com
Set Selenium Implicit Wait 5
Input Text id=kw
${firstRet}= Get Text
Should Contain ${firstRet}
B、RIDE ——效率不高,但符合剛入門,無需編程基礎
用例解析:
1、test suite 和 testcase
測試套件,就是測試用例的集合
一般我們把功能相關的測試用例組合起來放一塊,成為某個測試套件
套件文件里包含測試用例 xxx.robot為文件中最小級別的套件
2、當用例存在中文時,進行解碼操作,window 默認為GBK,則需要將pycharm進行改成UTF-8
3、執行用例
命令行執行格式:
robot --<options> <datasource>
Option:參數項,可以指定具體的用例或套件等,非必填
Datasource:必填,表示執行用例的具體路徑,目錄或文件