HttpRunner2.0 快速上手

參考文檔見HttpRunnerV2.x幫助文檔

  • 安裝
  • 項(xiàng)目文件結(jié)構(gòu)
  • 測(cè)試用例
  • Demo

  • 安裝以及依賴軟件
    可運(yùn)行平臺(tái):windows、Linux、macOS,推薦系統(tǒng):Linux/macOS
    安裝方式: pip install httprunner
    依賴的Python版本:Python 3.4及以上版本

  • 項(xiàng)目文件結(jié)構(gòu)
    1.分為2種,一種是測(cè)試用例分層結(jié)構(gòu),一種是測(cè)試用例不分層結(jié)構(gòu)
    利用項(xiàng)目腳手架直接創(chuàng)建測(cè)試用例分層結(jié)構(gòu),如此一個(gè)基本的測(cè)試用例分層結(jié)構(gòu)就搞定了(懶人專用)
windows 環(huán)境
D:\>hrun --startproject demo
Start to create new project: demo
CWD: D:\

created folder: demo
created folder: demo\api
created folder: demo\testcases
created folder: demo\testsuites
created folder: demo\reports
created file: demo\debugtalk.py
created file: demo\.env

3.測(cè)試用例不分層結(jié)構(gòu),就是根據(jù)項(xiàng)目需要?jiǎng)?chuàng)建文件,兩種結(jié)構(gòu)見截圖


示例.png

  • 測(cè)試用例
    用例支持格式:YAML格式以及JSON格式
    測(cè)試用例結(jié)構(gòu)(拷貝自官網(wǎng)):


    測(cè)試用例結(jié)構(gòu).png

測(cè)試用例組織中三個(gè)基礎(chǔ)概念:測(cè)試套件、測(cè)試用例、測(cè)試步驟。

三者的關(guān)系為測(cè)試套件包含多個(gè)/一個(gè)測(cè)試用例(YAML/JSON),一個(gè)測(cè)試用例包含多個(gè)/一個(gè)測(cè)試步驟(STEP),測(cè)試步驟對(duì)應(yīng)YMAL/JSON文件中的test,包含單個(gè)接口的全部內(nèi)容,包括發(fā)起請(qǐng)求,解析響應(yīng)結(jié)果,校驗(yàn)結(jié)果。

數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)為list of dict ,以JSON格式的數(shù)據(jù)為例

[
  {
    "config": {...}
  },
  {
    "test": {...}
  },
  {
    "test": {...}
  }
]

config:整個(gè)測(cè)試用例的全局配置項(xiàng),作用域?yàn)檎麄€(gè)測(cè)試用例(即一個(gè)YAML/JSON文件)
test:測(cè)試步驟的變量空間(context)會(huì)繼承或覆蓋 config 中定義的內(nèi)容;
若某變量在 config 中定義了,在某 test 中沒有定義,則該 test 會(huì)繼承該變量
若某變量在 config 和某 test 中都定義了,則該 test 中使用自己定義的變量值
各個(gè)測(cè)試步驟(test)的變量空間相互獨(dú)立,互不影響;
如需在多個(gè)測(cè)試步驟(test)中傳遞參數(shù)值,則需要使用 extract 關(guān)鍵字,并且只能從前往后傳遞

注意: test的執(zhí)行順序是自上而下執(zhí)行

重點(diǎn)在于理解HttpRunner的分層結(jié)構(gòu)以及包含關(guān)系
更多內(nèi)容參考官網(wǎng)例子

了解更多
[requests]: http://docs.python-requests.org/en/master/
[unittest]: https://docs.python.org/3/library/unittest.html
[Locust]: http://locust.io/
[PyUnitReport]: https://github.com/HttpRunner/PyUnitReport
[Jenkins]: https://jenkins.io/index.html
[HttpRunner-blog]: http://debugtalk.com/post/ApiTestEngine-api-test-best-practice/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容