文章詳情頁
Python接口自動(dòng)化測(cè)試框架運(yùn)行原理及流程
瀏覽:10日期:2022-07-03 16:28:03
本文總結(jié)分享介紹接口測(cè)試框架開發(fā),環(huán)境使用python3+selenium3+unittest+ddt+requests測(cè)試框架及ddt數(shù)據(jù)驅(qū)動(dòng),采用Excel管理測(cè)試用例等集成測(cè)試數(shù)據(jù)功能,以及使用HTMLTestRunner來生成測(cè)試報(bào)告,目前有開源的poman、Jmeter等接口測(cè)試工具,為什么還要開發(fā)接口測(cè)試框架呢?因接口測(cè)試工具也有存在幾點(diǎn)不足。
測(cè)試數(shù)據(jù)不可控制。比如接口返回?cái)?shù)據(jù)不可控,就無法自動(dòng)斷言接口返回的數(shù)據(jù),不能斷定是接口程序引起,還是測(cè)試數(shù)據(jù)變化引起的錯(cuò)誤,所以需要做一些初始化測(cè)試數(shù)據(jù)。接口工具沒有具備初始化測(cè)試數(shù)據(jù)功能,無法做到真正的接口測(cè)試自動(dòng)化。 無法測(cè)試加密接口。實(shí)際項(xiàng)目中,多數(shù)接口不是可以隨便調(diào)用,一般情況無法摸擬和生成加密算法。如時(shí)間戳和MDB加密算法,一般接口工具無法摸擬。 擴(kuò)展能力不足。開源的接口測(cè)試工具無法實(shí)現(xiàn)擴(kuò)展功能。比如,我們想生成不同格式的測(cè)試報(bào)告,想將測(cè)試報(bào)告發(fā)送到指定郵箱,又想讓接口測(cè)試集成到CI中,做持續(xù)集成定時(shí)任務(wù)。測(cè)試框架處理流程
測(cè)試框架處理過程如下:
首先初始化清空數(shù)據(jù)庫表的數(shù)據(jù),向數(shù)據(jù)庫插入測(cè)試數(shù)據(jù); 調(diào)用被測(cè)試系統(tǒng)提供的接口,先數(shù)據(jù)驅(qū)動(dòng)讀取excel用例一行數(shù)據(jù); 發(fā)送請(qǐng)求數(shù)據(jù),根據(jù)傳參數(shù)據(jù),向數(shù)據(jù)庫查詢得到對(duì)應(yīng)的數(shù)據(jù); 將查詢的結(jié)果組裝成JSON格式的數(shù)據(jù),同時(shí)根據(jù)返回的數(shù)據(jù)值與Excel的值對(duì)比判斷,并寫入結(jié)果至指定Excel測(cè)試用例表格; 通過單元測(cè)試框架斷言接口返回的數(shù)據(jù),并生成測(cè)試報(bào)告,最后把生成最新的測(cè)試報(bào)告HTML文件發(fā)送指定的郵箱。測(cè)試框架結(jié)構(gòu)目錄介紹
目錄結(jié)構(gòu)介紹如下:
config/: 文件路徑配置 database/: 測(cè)試用例模板文件及數(shù)據(jù)庫和發(fā)送郵箱配置文件 db_fixture/: 初始化接口測(cè)試數(shù)據(jù) lib/: 程序核心模塊。包含有excel解析讀寫、發(fā)送郵箱、發(fā)送請(qǐng)求、生成最新測(cè)試報(bào)告文件 package/: 存放第三方庫包。如HTMLTestRunner,用于生成HTML格式測(cè)試報(bào)告 report/: 生成接口自動(dòng)化測(cè)試報(bào)告 testcase/: 用于編寫接口自動(dòng)化測(cè)試用例 run_demo.py: 執(zhí)行所有接口測(cè)試用例的主程序接口測(cè)試用例的主程序GitHub項(xiàng)目地址:https://github.com/yingoja/DemoAPI
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. JSP之表單提交get和post的區(qū)別詳解及實(shí)例2. jsp+servlet實(shí)現(xiàn)猜數(shù)字游戲3. JSP+Servlet實(shí)現(xiàn)文件上傳到服務(wù)器功能4. 低版本IE正常運(yùn)行HTML5+CSS3網(wǎng)站的3種解決方案5. Xml簡介_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理6. CSS可以做的幾個(gè)令你嘆為觀止的實(shí)例分享7. UDDI FAQs8. jsp文件下載功能實(shí)現(xiàn)代碼9. 將properties文件的配置設(shè)置為整個(gè)Web應(yīng)用的全局變量實(shí)現(xiàn)方法10. ASP常用日期格式化函數(shù) FormatDate()
排行榜
