pytestの件01_実行結果内容改造
1230 ワード
前言
pytestコマンドラインを改造してテスト例を実行すると、返される内容.
使用例の説明の追加
試験用例を作成する場合、試験目的を試験用例名と書くと、用例名が長すぎる場合があるが、短い番号で用例名を表す場合、実行結果から具体的な試験ロジックが分からないため、試験結果の返却内容を改造して用例記述情報を携帯したい.ここにいるpyにコードを追加するには、次のようにします.
@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
outcome = yield
report = outcome.get_result()
report.description = str(item.function.__doc__)
if not report.description:
report.nodeid = report.nodeid.encode("utf-8").decode("unicode_escape")
else:
report.nodeid = "Description of this test is : " + report.description
効果は次のとおりです.
test_doc.py::TestDoc::test_01
Description of this test is : this is the first test PASSED [ 33%]
test_doc.py::TestDoc::test_02
Description of this test is : this is the second test PASSED [ 66%]
test_doc.py::TestDoc::test_03
Description of this test is : None PASSED [100%]
もっと良い解決方法があれば、伝言を歓迎します.