web-dev-qa-db-ja.com

py.testは、クラスの下のテストを見つけません

ユニットテストベースではないテストクラスを作成しようとしています。

このクラスのこのメソッド

class ClassUnderTestTests:

    def test_something(self):

コマンドラインからpy.testを呼び出したとき、またはPyCharmでこのテストを実行したとき(独自のモジュール上にある)、検出して実行することはできません。

この

def test_something(self):

クラス外の同じメソッドを検出して実行できます。

テストをクラスの下にグループ化したいのですが、何かが足りない場合を除いて、 py.test spec に従っています。

環境:Windows 7、py.testがテストランナーとして設定されたPyCharm。

19
Michali

慣例により、

プレフィックス付きテストクラスをテストします(initメソッドなし)

例えば。

# content of test_class.py
class TestClass:
    def test_one(self):
        x = "this"
        assert 'h' in x

    def test_two(self):
        x = "hello"
        assert hasattr(x, 'check')

ドキュメントを参照してください ここ

28
twil