2016-11-07 17 views
1

同じスクリプトで使用される引数を使用してpytestを使用してこのスクリプトを実行します。引数付きのpytestを使用してPythonスクリプトを実行する

これは、スクリプト名test.pyです:私はこの場合は引数でpytestを使用して、このスクリプトを実行したい 引数がある

#!/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" 

g

私はコマンドpytest -q test.py gを試しましたが、動作しません。

+0

= sys.argvの[2]#私たちが必要とする引数を - -------------> typing error –

+0

'g'を渡すと、' pytest'はそれをファイルパラメータと見なします。なぜこのようなテストパラメータを渡したいのですか? – Nurjan

答えて

0

py.testはテスト用にスキャンし、すべて実行します。同じ引数を各テストファイルに渡すことは悪い考えです。

あなたは、あなたのテスト '自走' することができます:

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

chmod +xあなたのファイルを、手動でそれを実行します。./test_something.py

関連する問題