最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【2023最新教程】從0到1搭建pytest接口自動化測試框架(建議收藏)

2023-03-14 16:11 作者:華測教育官方  | 我要投稿

整理了一些軟件測試方面的資料、面試資料(接口自動化、web自動化、app自動化、性能安全、測試開發(fā)等),有需要的小伙伴可以拉到文末,無套路自行領(lǐng)取~

文章目錄

一. 背景

二. 基礎(chǔ)環(huán)境

三. 項目結(jié)構(gòu)

四、框架解析

4.1 接口數(shù)據(jù)文件處理
4.2 封裝測試工具類
4.3 測試用例代碼編寫
4.4 測試用例運(yùn)行生成報告??


一. 背景

Pytest目前已經(jīng)成為Python系自動化測試必學(xué)必備的一個框架,網(wǎng)上也有很多的文章講述相關(guān)的知識。最近自己也抽時間梳理了一份pytest接口自動化測試框架,因此準(zhǔn)備寫文章記錄一下,做到盡量簡單通俗易懂,當(dāng)然前提是基本的python基礎(chǔ)已經(jīng)掌握了。如果能夠?qū)π聦W(xué)習(xí)這個框架的同學(xué)起到一些幫助,那就更好了~


二. 基礎(chǔ)環(huán)境

語言:python 3.8
編譯器:pycharm
基礎(chǔ):具備python編程基礎(chǔ)
框架:pytest+requests+allure


三. 項目結(jié)構(gòu)

項目結(jié)構(gòu)圖如下:


每一層具體的含義如下圖:

測試報告如下圖:


四、框架解析

4.1 接口數(shù)據(jù)文件處理

框架中使用草料二維碼的get和post接口用于demo測試,比如:
get接口:https://cli.im/qrcode/getDefaultComponentMsg
返回值:{“code”:1,“msg”:"",“data”:{xxxxx}}

數(shù)據(jù)文件這里選擇使用Json格式,文件內(nèi)容格式如下,test_http_get_data.json:


表示dataitem下有兩條case,每條case里面聲明了id, name, header, url, method, expectdata。如果是post請求的話,case中會多一個parameters表示入?yún)ⅲ缦拢?/strong>

為了方便一套腳本用于不同的環(huán)境運(yùn)行,不用換了環(huán)境后挨個兒去改數(shù)據(jù)文件,比如
測試環(huán)境URL為:https://testcli.im/qrcode/getDefaultComponentMsg
生產(chǎn)環(huán)境URL為:https://cli.im/qrcode/getDefaultComponentMsg

因此數(shù)據(jù)文件中url只填寫后半段,不填域名。然后config》global_config.py下設(shè)置全局變量來定義域名:

utils文件夾下,創(chuàng)建工具類文件:read_jsonfile_utils.py, 用于讀取json文件內(nèi)容:


運(yùn)行結(jié)果如下:


4.2 封裝測試工具類

utils文件夾下,
除了上面提到的讀取Json文件工具類:read_jsonfile_utils.py,
還有封裝request 請求的工具類:http_utils.py
從Excel文件中讀取數(shù)據(jù)的工具類:get_excel_data_utils.py(雖然本次框架中暫時未采用存放接口數(shù)據(jù)到Excel中,但也寫了個工具類,需要的時候可以用)


http_utils.py內(nèi)容:

4.3 測試用例代碼編寫

testcases文件夾下編寫測試用例:

test_caoliao_http_get_interface.py內(nèi)容:


企業(yè)中的系統(tǒng)接口,通常都有認(rèn)證,需要先登錄獲取token,后續(xù)接口調(diào)用時都需要認(rèn)證token。因此框架需要能處理在運(yùn)行用例前置和后置做一些動作,所以這里用到了conftest.py文件,內(nèi)容如下:

由于用例中用到了@pytest.mark.httptest給用例打標(biāo),因此需要創(chuàng)建pytest.ini文件,并在里面添加markers = httptest,不然會有warning,說這個Mark有問題。并且用例中用到的日志打印logging模板也需要在pytest.ini文件中增加日志配置。pytest.ini文件內(nèi)容如下:



4.4 測試用例運(yùn)行生成報告


pytest-html報告:

generateAllureReport.bat文件位置:

文件內(nèi)容:

allure open report/

Allure報告:

框架中用到的一些細(xì)節(jié)知識點(diǎn)和問題,如:

conftest.py和@pytest.fixture()結(jié)合使用 pytest中使用logging打印日志 python中獲取文件相對路徑的方式 python虛擬環(huán)境 pytest框架下Allure的使用

我會在后續(xù)寫文章再介紹。另外框架同樣適用于dubbo接口的自動化測試,只需要添加python調(diào)用dubbo的工具類即可。點(diǎn)擊【測試資料】菜單獲取框架下載地址。

軟件測試學(xué)習(xí)資源分享

最后感謝每一個認(rèn)真閱讀我文章的人,看著粉絲一路的上漲和關(guān)注,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:


這些資料,對于想進(jìn)階【自動化測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!凡事要趁早,特別是技術(shù)行業(yè),一定要提升技術(shù)功底。希望對大家有所幫助……基礎(chǔ)知識、Linux必備、Shell、互聯(lián)網(wǎng)程序原理、Mysql數(shù)據(jù)庫、抓包工具專題、接口測試工具、測試進(jìn)階-Python編程、Web自動化測試、APP自動化測試、接口自動化測試、測試高級持續(xù)集成、測試架構(gòu)開發(fā)測試框架、性能測試、安全測試等配套學(xué)習(xí)資源免費(fèi)分享~

關(guān)注我的微信公眾號:【 程序員小濠】免費(fèi)獲取~

如果你不想再體驗(yàn)一次自學(xué)時找不到資料,沒人解答問題,堅持幾天便放棄的感受的話,可以加入我的軟件測試交流群:110685036 大家一起討論交流,里面也有各種軟件測試資料和技術(shù)交流

送上一句話:
如果不想成為“工具人”,就不要停下成長的步伐,打造屬于自己的獨(dú)特價值,具備不可替代的稀缺屬性,這樣才能不被淘汰,也能夠在遭遇變化時,隨自己所愿進(jìn)行選擇。


【2023最新教程】從0到1搭建pytest接口自動化測試框架(建議收藏)的評論 (共 條)

分享到微博請遵守國家法律
郯城县| 颍上县| 佛教| 谷城县| 太仆寺旗| 利津县| 沙雅县| 天柱县| 安国市| 连城县| 荆门市| 图木舒克市| 东兰县| 游戏| 临高县| 历史| 循化| 江阴市| 乐平市| 寿宁县| 梧州市| 临澧县| 耒阳市| 文登市| 上思县| 天气| 彝良县| 资讯 | 白沙| 聂拉木县| 金乡县| 东丰县| 永春县| 巴中市| 朝阳区| 淮安市| 遂宁市| 融水| 济南市| 额济纳旗| 云龙县|