我正在尝试做什么
我正在使用pytest在python中编写一个小框架,作为拆解的一部分,我正在截取屏幕截图。 现在,我希望根据运行测试命名屏幕截图,而不是conftest.py 所以,例如,我现在的代码是:
driver.save_screenshot(os.path.basename(__file__)+'.png')
问题
这将打印名称“conftest.py”。 如果可能,我想打印调用测试名称。我在猜测使用请求?
答案 0 :(得分:1)
您可以通过request.node.fspath
访问当前文件路径。例如:
# conftest.py
import pytest
@pytest.fixture
def currpath(request):
return str(request.node.fspath)