所以我必须使用带有junit xml文件的pytest创建一个Allure Report。我从test_config.py文件中调用pytest.main()来启动不同文件夹中的不同类型的测试用例。
def start_pytest(args):
if pytest.main(["-x", "--alluredir=%s" % allure_path, "--junitxml=%s" % junit_path, test_1]):
sys.exit(1)
if args.test2 or args.all:
pytest.main(["--alluredir=%s" % allure_path, "--junitxml=%s" % junit_path, test_2])
if args.test3 or args.all:
pytest.main(["--alluredir=%s" % allure_path, "--junitxml=%s" % junit_path, test_3])
我想我需要--alluredir = somepath选项来创建一个供Allure使用的XML文件。如果可能的话,我希望有不同的test_case.py文件。现在的问题是,如果我在脚本中第二次或第三次使用--alluredir,将清除报告目录:
py.test --alluredir [path_to_report_dir]
# WARNING [path_to_report_dir] will be purged at first run
来源:https://pypi.python.org/pypi/pytest-allure-adaptor
那么,有没有办法在第一次使用时删除目录--allurdir并保留文件第二次和第三次。或者我必须在一个文件中编写所有测试用例,所以我只需要调用pytest.main()一次。
感谢您的时间,非常感谢!
答案 0 :(得分:0)
Allure可以从一些测试结果中做出一份报告。
但py.test allure适配器在运行之前清除结果目录。
所以你必须在不同的目录中收集结果,然后在生成报告之前将它们放入一个目录中。
但原因应该是不同的测试用例集。