3

私は PyDev でノーズ テストを正常に実行しており、nose2 を試してみたいと思っていました。

だから私はそれをインストールしました

pip install nose2

サンプル コードをhttp://nose2.info/から「test_script_with_nose2」という新しいモジュールにコピー アンド ペーストしました。

from nose2.compat import unittest
from nose2.tools import params

def tests_can_be_functions():
    assert True

def tests_can_be_generators():
    def check(val):
        assert val == val, "Identity failure!"
    for i in range(1, 4):
        yield check, i

@params(1, 2, 3)
def tests_can_take_parameters(p):
    assert p < 4, "How'd that get here?"

class TestsCanBeUnittestTestCases(unittest.TestCase):
    def setUp(self):
        self.x = 1
    def test_one(self):
        self.assertEqual(self.x, 1)

class TestsCanBePlainClasses(object):
    def setUp(self):
        self.me_too = 1
    def test(self):
        assert self.me_too == 1, "Not me too?"

しかし、私はこのエラーが発生します

======================================================================
ERROR: test_script_with_nose2.tests_can_take_parameters
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/nose/case.py", line 197, in runTest
    self.test(*self.arg)
TypeError: tests_can_take_parameters() takes exactly 1 argument (0 given)

----------------------------------------------------------------------
Ran 7 tests in 0.014s

FAILED (errors=1)

pydev の単体テスト ランナーとしてノーズを選択しましたが、おそらくノーズ 2 用の新しいランナーが必要ですか? もしそうなら、誰もこれを行う方法を知っていますか? それとも、ここで些細なことを見逃していますか?

4

1 に答える 1