如何访问测试代码中的测试套件目录路径

时间:2018-04-24 07:22:28

标签: python pytest

我需要访问测试代码中的当前测试套件目录路径。以便访问测试套件目录中的一些文件:

示例:

/home/stu/myproj/pytest
                    |_test_abc.py
                    |_perf.sh
                    |_conftest.py

我需要在test_abc.py中获取perf.sh(/ home / student / pytest /)的路径。因为我不知道将从哪个目录运行py.test命令,并且用户可以将myproj移动(git clone)到任何目录。我无法使用硬编码路径。

因为测试套件目录将作为参数传递,是否有办法访问此目录路径并在我的测试代码(test_abc.py)中使用它。

1 个答案:

答案 0 :(得分:-1)

以下代码可以为您提供帮助。

import os
import inspect

# find out the directory of current script
directory = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
# make a full path of the testfile(perf.sh)
the_filename = os.path.join(directory, 'perf.sh')
if os.path.isfile(the_filename):
    print 'Found the file'
else:
    print 'Failed to find the file'