?目標
組內任何人都可以進行自動化測試用例的編寫
完全分離測試用例和自動化測試代碼,就像寫手工測試用例一下,編寫excel格式的測試用例,包括步驟、檢查點,然后執行自動化工程,即可執行功能自動化測試用例,包括測試結果、測試報告。
任何一臺安裝了JDK環境的windows機器都可以直接運行,不必考慮運行環境的問題。
整理了一下目前使用的自動化測試框架,基于Selenium WebDriver + python,關鍵字驅動,簡單總結一下。
?
自動化工程:
?
driver 目錄??? ??????? ----瀏覽器驅動(支持chrome、IE瀏覽器)
data目錄??????????? ???????? ----上傳場景使用的圖片(具體業務相關)
Picture目錄 ???? ???????? ----測試用例失敗截圖
TestCase_UI.exe??????? ???????? ----主程序(使用pyinstaller打包發布)
Test.xls?????? ???????? ???????? ----測試用例(重點關注)?
?
測試用例(***.xls文件)
包括4個sheet分頁,詳情如下:
1、PageElements 分頁
?
模塊:具體的測試業務模塊
頁面元素:頁面具體操作的元素
例如“我的工作臺-搜索輸入框”,“我的工作臺”就是模塊名稱,“搜索輸入框”就是需要操作的元素
關鍵字:指的是元素的操作方式
例如文本輸入框封裝的關鍵字是input,按鈕是click,斷言是assert,這個是封裝在自動化測試工程中的
頁面定位元素:元素定位方式,支持8種定位方式:id、class、name、link…xpath、css
頁面元素定位表達式:
???????? 例如//*[@id='tip_about_info']/div[2]/span,采用xpath定位
如下的元素(輸入框),關鍵字-input、頁面定位元素-id、頁面元素定位表達式- plantformSearchInput
二級定位:頁面包含多個iframe 時,采用二級定位的方式進行頁面元素定位
?
2、TestConfig 分頁
? ? ?配置信息
?
Driver:根據填寫的數據啟動不同的瀏覽器,支持chrome、IE
URL:測試網址
PageElements:根據填寫的數據,讀取數據源,支持excel、py
**Report:測試報告的標題,可以定制
?
3、TestSuite 分頁
每行數據表示一個測試用例
?
測試用例序號:唯一,不能重復
測試用例描述:說明該條測試用例的目的
前置條件:方便用戶維護用例,可以為空
操作步驟:同上
預期結果:同上
是否執行:執行標識,yes執行、no不執行
測試結果:測試用例執行結果
?
4、TestSteps 分頁
? ? ? 測試用例的執行步驟
1、2、3行為登錄操作,填寫用戶名、密碼,不用修改
?
測試用例序號:對應TestSuite分頁的測試用例序號,一個測試用例多個步驟,測試用例序號相同
測試模塊:業務模塊
測試用例步驟描述:對應PageElements分頁的“頁面元素”列
操作值:主要是文本輸入框輸入的數據
檢查點:測試步驟的檢查點,一條用例可包含多個檢查點
測試結果:用例步驟執行成功、用例步驟執行失敗
???????? 一個用例存在多個測試步驟,任意步驟執行失敗,不在執行剩下的步驟,直接執行下個測試用例,失敗的步驟填寫“用例步驟執行失敗”
頁面截圖:用例步驟執行失敗的步驟截圖
?
Sheet頁面對應關系說明:
TestSuite 分頁的測試用例序號對應TestSteps 分頁的測試用例序號
?
PageElements 分頁的測試步驟描述對應TestSteps 分頁的測試步驟描述
?
?
自動化用例執行過程
???????? 命令行中直接輸入自動化測試工程文件的名稱,即可開始測試用例執行,打印具體測試過程。
?
?
用例報告
???????? 用例執行完成,在report目錄中生成html格式的報告,方便jenkins持續集成使用
?
報告內容如下(可定制)
?
查看執行結果
TestSuite 分頁
?
TestSteps 分頁
?
?