ドキュメントで説明されているように、異なるディレクトリに同じ名前のファイルがある場合は、テストを実行する場合には--keep-duplicates
が便利です。
短い答えは、あなたがしたいことをすることができないということです。
長い答えは、変数がファイルに複数回定義されている場合、最後の定義は、すべての以前のものを上書きしていることです。これは、単純な変数のassigmenだけでなく、他のものに当てはまります。例えば
、次のコードでファイルhitchhiker.py
持っている場合:
a_variable = 42
[some code]
a_variable = 'towel'
を、あなたはそれをインポートし、a_variable
は値'towel'
を持つことになります。
def test_a():
print('a1')
def test_b():
print('b')
def test_a():
print('a2')
def test_a():
print('a3')
し、それを実行し、あなたが得る:あなたは、次のファイルにテストファイルを変更する場合
-> py.test test_a.py -s -v
[...]
collected 2 items
test_a.py::test_b b
PASSED
test_a.py::test_a a3
PASSED
を使用すると、最後のファイルで定義された関数を見ることができるように実行されます。ファイルの最後に最初の関数を移動すると、a1
が表示されます。
ありがとうございました。私は、それぞれのテストが目的であり、別々に集めることができると思った。 --keep-duplicatesを使用します。 – mungayree
'' py.test''はPythonインタプリタを使ってテストファイルを読み込むので、あなたが望むことができないと思います。 –