使用带参数的pytest运行Python脚本

时间:2016-11-07 02:38:43

标签: python-2.7 pytest

我想使用pytest执行此脚本,其中包含将由同一脚本使用的参数。

这是脚本名称test.py

#!/usr/bin/env python
import subprocess
import os
import sys
import pytest
a = sys.argv[3] # the argument that we need
if len(a)== "0":
    sys.exit(1) 
def test_function():
    assert a == "g"

我希望在这种情况下使用带有参数的pytest运行此脚本 参数是:g

我已尝试过命令pytest -q test.py g,但它无法正常工作。

1 个答案:

答案 0 :(得分:0)

py.test扫描测试并运行它们。将相同的参数传递给每个测试文件是个坏主意。

您可以让您的考试自我运行':

if __name__ == "__main__":
    pytest.main("-vv")
    # or pytest.main("-vv --cov --cov-report term-missing -s")

然后chmod +x您的文件并手动运行:./test_something.py