自動化測試方案
1.Python
Pytest 是Python的一種易用肋杖、高效和靈活的單元測試框架,可以支持單元和功能測試赃梧。
1.1設(shè)計思路
C端 (python+selenium+pytest+allure) 實現(xiàn)測試用例代碼輸入輸出執(zhí)行玫坛,
M端(django+rest_framework+vue ) 做用例管理,定時任務分配签夭,測試工具集合。
1.2項目框架設(shè)計圖
1.3測試輸出報告
1.4優(yōu)點
1)容易上手椎侠,入門簡單第租,文檔豐富,文檔中有很多實例可以參考我纪。
2)能夠支持簡單的單元測試和復雜的功能測試慎宾。
3)能夠執(zhí)行全部測試用例儡羔,也可以挑選部分測試用例執(zhí)行,并能自動重試失敗用例璧诵。
4)支持并發(fā)執(zhí)行,還能運行由nose, unittest編寫的測試用例仇冯。
5)具有很多第三方插件之宿,并且可以自定義擴展。
1.5缺點
1)由于純Python編寫苛坚,需要測試人員具有一定的代碼編寫與閱讀能力
2)Pytest本身沒有直觀的用例顯示與瀏覽頁面比被,需要借助第三方模塊展示用例分布情況(比如Allure)
2.robotframework
Robot Framework是一個基于Python的,可擴展的關(guān)鍵字驅(qū)動的自動化測試框架泼舱,用于端到端驗收測試和驗收測試驅(qū)動開發(fā)(ATDD)等缀。
2.1設(shè)計思路
C端(Robot framework-selenium2library):可以看做RF版的selenium 庫,selenium (webdriver)可以認為是一套基于web的規(guī)范(API)娇昙,appium 等測試工具都可以基于這套API進行頁面的定位與操作尺迂。
底層(支持python提供封裝工具庫)
2.2項目框架設(shè)計圖
2.3測試輸出報告
2.4優(yōu)點
1)啟用易于使用的表格語法,以統(tǒng)一的方式創(chuàng)建測試用例冒掌。
2)提供從現(xiàn)有關(guān)鍵字創(chuàng)建可重復使用的更高級別關(guān)鍵字的功能噪裕。
3)提供易于閱讀的結(jié)果報告和HTML格式的日志。
4)提供一個簡單的庫API股毫,用于創(chuàng)建自定義測試庫
5)提供標記以分類和選擇要執(zhí)行的測試用例膳音。
2.5缺點
1)固定的表格編寫形式,使很多簡單的語法變得復雜化铃诬,而且不支持復雜語法祭陷,不夠靈活,并且不利于提升測試人員的代碼編寫能力趣席,而且容易編寫疲勞兵志。
2)測試數(shù)據(jù)和測試代碼穿插寫到同一文件、同一方法中吩坝,產(chǎn)生了緊耦合毒姨,會導致修改測試數(shù)據(jù)或測試代碼時,可能會相互影響钉寝,不利于測試數(shù)據(jù)和測試腳本的維護弧呐。
其他擴展:
Appium XCUITest
Wda XCUITest
Seldom