大連三合一網(wǎng)站制作百度快照收錄入口
Pytest中conftest.py的用法
? 在官方文檔中,描述conftest.py是一個(gè)本地插件的文件,簡(jiǎn)單的說(shuō)就是在這個(gè)文件中編寫(xiě)的方法,可以在其他地方直接進(jìn)行調(diào)用。
-
注意事項(xiàng)
- 只能在根目錄編寫(xiě)conftest.py
- 插件加載順序在搜集用例之前
基礎(chǔ)用法
這里做一個(gè)簡(jiǎn)單的測(cè)試
- conftest.py
- test_conftest.py
直接運(yùn)行pytest,我們會(huì)發(fā)現(xiàn),測(cè)試步驟中會(huì)出現(xiàn)以下提示信息
可以看到,先輸出了conftest.py文件中的字符串,再輸出了用例中的字符串
項(xiàng)目用法
那我們知道了,conftest.py會(huì)自動(dòng)在pytest運(yùn)行時(shí)進(jìn)行加載,在項(xiàng)目中我們能怎么使用它呢。
比如,我們?cè)赾onftest.py中寫(xiě)加載測(cè)試數(shù)據(jù)的方法,再通過(guò)fixture來(lái)做為一種全局變量的使用。
或者如果有需要做用例前置條件的,也可以通過(guò)fixture的結(jié)合使用來(lái)達(dá)到目的
- 全局變量使用
這里我們使用yml文件存儲(chǔ)需要的數(shù)據(jù)
在conftest.py中編寫(xiě)讀取數(shù)據(jù)的方法,加上fixture裝飾器,使其能在用例中被發(fā)現(xiàn)。
通過(guò)執(zhí)行,觀察日志
可以看到在用例test_yaml_data中,直接拿到了yml文件中的內(nèi)容
結(jié)尾
本篇簡(jiǎn)單介紹了關(guān)于conftest.py的用法,后面會(huì)重點(diǎn)講述fixture的用法。