簡書:https://www.jianshu.com/p/6bfaca87a93b
部落格園:https://www.cnblogs.com/zy7y/p/13426816.html
testerhome:https://testerhome.com/topics/25003
我了解的參數依賴/接口依賴就是接口進行關聯操作,比如有些查詢接口需要登入之後才可以操作,那麼我們就需要拿到token之類的東西,這一部分東西是放到header中的,apiAutoTest圍繞的隻有路徑參數依賴,請求資料依賴
路徑參數依賴
譬如說現在的restful,一個users接口,路由一般這樣的<code>users</code>他的請求方式是get,這個路由我們把他認為是查所有使用者,如果查某一個使用者可能是這樣的<code>users/:id</code>也是個get請求,這裡這個id想表達的意思是這裡有個需要個使用者id的參數,比如1-500裡面的任意1個,也就是說這個id是可變的,可以從登入接口的傳回響應取一個叫userId的值
請求參數依賴
這個應該好了解些,就是說支付接口需要的訂單id,是從上一步送出訂單接口傳回的響應訂單id
舉個例子
假設現在有個實際響應結果字典如下
excel中接口路徑内容:<code>users/&$.case_005.data.id&/state/&$.case_005.data.careate_time&</code>
代碼内部解析後如下:<code>users/511/state/1605711095</code>
<code>&$.case_005.data.id&</code> 代表從響應字典中提取case_005字典中data字典中的id的值,提取出來的結果是511
excel中請求參數内容如下:
代碼内部解析後如下:
其實不難看出其中規則<code>&jsonpath提取文法&</code>,如果你需要的内容是字元串類型,隻需要這樣<code>"&jsonpath提取文法&"</code>
用例中書寫格式,在上傳檔案欄
用例書寫格式
config.yaml檔案中新增可配置初始header,整體代碼優化,相比之前,同樣測試用例執行下,快了2s左右
将配置檔案讀取,用例讀取整合在<code>read_file.py</code>下
移除報告壓縮方法
減少日志資訊
tools/init.py
tools/data_process.py
master: 分支為最新代碼
version1.0: 分支為之前開源的代碼(通過字典疊代的方式來處理資料依賴)
Https://gitee.com/zy7y/apiAutoTest.git
Https://github.com/zy7y/apiAutoTest.git
目前在公司正在做接口測試,說實話也是摸索着來,以上的優化項都是實際做的過程中突然想到的,然後就更新了
接入用例前後置SQL, 前置SQL目前想的是現在項目中遇到的問題,有些接口沒有傳回需要的資料,這裡就要用前置SQL查詢的結果傳到請求資料裡面了,後置SQL主要是請求後檢視資料庫中的資料是否變動,形成資料庫斷言 2020/12/08 完成 , 至此 apiAutoTest 應該不會 再有大更新~~~ 謝謝 看這個Demo的人
企業微信推送:目前項目中預想的效果,是後端人員送出代碼,自動部署之後,通過gitlab-ci 啟動測試代碼,進行接口測試完成之後采集allure中的測試結果一有異常/失敗用例就發送郵件并進行企業微信推送給上司 這個其實就是重新發送請求~
.... 就不說了還有很多優化項,能力不夠好好充電吧,~~
謝謝各位對apiAutoTest的幫助,謝謝~~~
作者:zy7y
出處:http://www.cnblogs.com/zy7y
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須在文章頁面給出原文連結,否則保留追究法律責任的權利。