python自动测试g_Python自动化测试如何自动生成测试用例?
原文作者:陳安妮annie1
原出處:簡書
上文內(nèi)容不用于商業(yè)目的,如涉及知識產(chǎn)權問題,請權利人聯(lián)系博為峰,我們將立即處理。傳統(tǒng)的測試用例需要測試或者開發(fā)人員將用戶的操作用代碼表示出來,通過斷言判斷是否和預期一致,寫測試用例也占用了部分時間,加上版本迭代測試用例的維護成本也較高,于是基于無埋點的需求相結合自動化測試來檢測埋點,及時告警,提高準確率和代碼質(zhì)量,為了減少測試用例的開發(fā)維護時間,誕生了自動生成測試用例的方案,另外不因為出錯而中斷代碼的執(zhí)行。
測試框架
測試框架使用FAutoTest,可以測試小程序,H5,對比曾經(jīng)用過的selenium,代碼運行要穩(wěn)定很多,wait的時間也都很穩(wěn)定,對比phantom截圖像素對比,可以細化測試用例的行為,基于x5內(nèi)核的driver能測試微信環(huán)境,能覆蓋到現(xiàn)業(yè)務的使用場景。
如何自動生成測試用例?1.首先在后臺配置測試用例,具體思路
獲取點擊位置xpath,該測試用例預期文案或者樣式
請求接口將測試用例數(shù)據(jù)配置寫入表,并提供接口拉取所有測試用例數(shù)據(jù)
2.配置完測試用例,python請求接口獲取測試用例配置的入?yún)?in字段),出參(out字段),in里邊的字段是入?yún)?#xff0c;url是點擊行為所在的頁面,xpath是點擊的位置,out里邊的字段是出參,url是預期要跳轉的頁面,xpath是預期頁面的標記位置,帶text是預期的文案,帶class是預期的樣式,把用戶行為盡量拆分成入?yún)?#xff0c;出參能夠表達的行為
3.python請求接口,遍歷接口數(shù)據(jù)生成前綴為test_case_xxx的測試用例,自動生成測試用例而不是在一條測試用例里邊執(zhí)行完所有的行為,避免出錯而中斷代碼執(zhí)行,代碼如下生成測試報告
1)安裝HTMLTestRunner
HTMLTestRunner 是 Python 標準庫的 unittest 模塊的一個擴展,它可以生成 HTML的 測試報告。
首先要下 HTMLTestRunner.py 文件,將下載的文件放入…pythonLib目錄下
python2版下載地址:
http://tungwaiyip.info/softwa...
python3版下載地址:
http://pan.baidu.com/s/1dEZQ0pz
2)測試腳本中引入
from HTMLTestRunner import HTMLTestRunner
3)定義測試報告的路徑,調(diào)用HtmlTestRunner
# 按照一定的格式獲取當前的時間
now = time.strftime("%Y-%m-%d %H_%M_%S")
# 定義報告存放路徑
filename = "../report/" + now + ".html"
fp = open(filename, "wb")
# 定義測試報告
runner = HTMLTestRunner(stream=fp,
title="測試報告",
description="測試用例執(zhí)行情況:")
runner.run(suite())
4)執(zhí)行測試腳本,打印測試報告,生成html,但是測試報告中有亂碼,參考網(wǎng)上解決方法:https://testerhome.com/topics...,測試腳本引入代碼
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
修改HtmlTestRunner.py中的編碼“l(fā)atin-1”修改為“utf-8”后保存
5)再次執(zhí)行測試腳本,生成測試報告如下:
總結
以上是生活随笔為你收集整理的python自动测试g_Python自动化测试如何自动生成测试用例?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php去除html标签_用PHP操作DO
- 下一篇: python爬取豆瓣电影并分析_爬取豆瓣