pytest.ini 配置的路径问题。
1,testpaths,是指相对于pytest.ini这个文件的相对路径,一般pytest.ini存放在工程目录下,testpaths配置的是./testcase,会在当前工程目录下面找到testcase目录,这个基本没问题,很好理解。
2, addopts 配置的allure 临时tep 文件(json 报告),和log_file的路径,
注意是指相对于运行的测试用例testcase.py文件的相对路径。
和上面第1点不同的是,不会生成在工程目录下面,如果你配置的是./logs 或者 ./json_report , 运行后会发现allure 临时报告和日志文件夹都生成到testcase这个目录下面了。
改成…/logs 或者 …/json_report 后,才会生成到工程目录下面。
补充下运行测试用例的相对路径问题。
1,如果你是用main.py文件运行测试用例,因为main.py在工程目录下面,所以你的相对路径都要改成./ ,不要用…/ ,否则你的testcase.py 在用相对路径找testdata时,会报错,提示找不到文件。因为你的工程目录的上一层目录,是没有testdata的。
2, 如果你是单独运行一个testcase.py文件,单独跑测试用例,代码里面的相对路径,特别是读取testdata的代码,需要把相对路径改成…/,不要用./, 否则你单独跑用例,在当前目录是找不到testdata的,会报错,提示找不到文件。因为必须要到用例的上一层才可以找到testdata。