【忘了的話,來個pytest -h | findstr html,還可以輸出為文字:pytest -h > pytest_help.txt】
1、格式:pytest -sv --html=測試報告的路徑 要執行的檔案
例如:pytest -sv --html=report.html xfail_test.py
會自動在當前目錄生成html檔案和assets目錄,如下:
2、如果不想生成assets目錄,格式:pytest -sv --html=測試報告的路徑 --self-contained-html 要執行的檔案
1、pytest --alluredir=report(資料夾) ***.py:執行結果列印在終端,同時生成report資料夾,裡面是json格式的測試結果。
一直生成,就會一直疊加----->先清空目錄,再生成測試結果:pytest --alluredir=report --clean-alluredir ***.py
解壓,把d:\allure\allure-2.13.0\bin新增到環境變數path裡。
然後,重啟pycharm。
3、生成html
格式的測試報告:
①allure generate report(資料夾)----->預設存放在allure-report資料夾裡
②allure generate report -o test_report----->指定存放在report資料夾裡
如果test_report資料夾已存在:
allure generate -c report -o test_report
4、網頁開啟
1、結果是xpass的,在報告裡顯示為pass
2、結果是xfail的,在報告裡顯示為skipped
import pytest
import allure
# 設定一條測試用例的每個步驟(方法1)
@allure.step("測試第一步")
def step_1():
pass
@allure.step("測試第二步")
def step_2():
pass
# 按照模組子模組或功能點子功能點, 對測試用例進行分組
@allure.epic('後台管理模組')
@allure.feature('登入功能點')
@allure.story('正常登入')
def test_a():
# 設定一條測試用例的每個步驟(方法2)
with allure.step("測試第一步"):
pass
with allure.step("測試第二步"):
assert 1 == 2
with allure.step("測試第三步"):
pass
@allure.epic('後台管理模組')
@allure.feature('登入功能點')
@allure.story('使用者名稱錯誤登入')
@allure.issue('')
@allure.testcase('')
# 設定測試用例的標籤, 可以設定多個
@allure.tag("回歸測試", "重要")
# 設定測試用例的級別 blocker > critical > normal > minor > trivial
@allure.title('測試登入:使用者名稱錯誤')
@allure.description('測試登入:測試用例描述資訊')
@allure.severity("blocker")
def test_b1():
step_1()
step_2()
@allure.epic('後台管理模組')
@allure.feature('商品管理')
def test_c():
assert 1 == 1
def test_d():
assert 1 == 2
def test_e():
assert 1 == 2
建立框架入口
import pytest
import os
if __name__ == '__main__':
result_dir = "./test_result"
report_dir = "./test_report"
# pytest.main() 相當於執行pytest命令
pytest.main(["-sv", "--alluredir=%s"%result_dir, "--clean-alluredir", "test_allure_markers.py"])
ret = os.system("allure generate --clean %s -o %s" % (result_dir, report_dir))
if ret:
print('生成測試報告失敗')
else:
print('生成測試報告成功')
Python pytest測試框架基本用法(一)
一 框架介紹及安裝 pytest是python的一種單元測試框架,與python自帶的unittest測試框架類似,但是比unittest框架使用起來更簡潔,效率更高。安裝 pip install pytest 我這裡已經安裝成功了 二 框架使用流程 建立如下的原始碼檔案test one.py de...
python pytest測試框架介紹三
之前介紹了pytest以xunit形式來寫用例,下面來介紹pytest特有的方式來寫用例 如下 這裡使用的了pytest的特有的模式來寫用例,使用的方式是scope方式,scope支援多種,後面會介紹 這裡還使用了pytest的addfinalizer內建功能,具體可參見官網,用處是 在最後乙個測試...
Python Pytest框架(三)測試韌體 下
一 執行命令pytest fixture 可以列出當前所有可用的fixture,包括內建的 外掛程式中的 以及當前專案定義的。eg conftest.py和test 1.py在同一目錄下,要使用測試韌體login。conftest.py import pytest pytest.fixture de...