11

条件が満たされたときにいくつかのテスト機能をスキップしたいと思います。たとえば、次のようになります。

@skip_unless(condition)
def test_method(self):
    ...

conditionここでは、 true と評価された場合、テスト メソッドがスキップされたと報告されることを期待しています。これはnoseで頑張ってできたのですが、nose2でもできるのか見てみたいです。

関連する質問は、 nose2のすべてのテストをスキップする方法について説明しています。

4

3 に答える 3

15

一般的な解決策:

unittestノーズテスト、ノーズ2、およびパイテストで機能するスキップ条件を使用できます。次の 2 つのオプションがあります。

class TestTheTest(unittest.TestCase):
    @unittest.skipIf(condition, reason)
    def test_that_runs_when_condition_false(self):
        assert 1 == 1

    @unittest.skipUnless(condition, reason)
    def test_that_runs_when_condition_true(self):
        assert 1 == 1

パイテスト

フレームワークの使用pytest:

@pytest.mark.skipif(condition, reason)
def test_that_runs_when_condition_false():
    assert 1 == 1
于 2017-12-08T09:52:31.937 に答える
4

unittest.skipUnless()メソッドが組み込まれており、nose で動作するはずです。

于 2016-04-04T15:59:01.887 に答える