我似乎無法得到test1.test_something()在test2工作..不知道是否因爲他們都從同一基地繼承?unittest,從其他文件運行測試
Helper.py:
class baseTest(unittest.TestCase):
def setUp(self, param="Something"):
print param
pass
Test1.py
from Helper import baseTest
class test1(baseTest):
def setUp(self):
super(test1, self).setUp('foo')
def test_something(self):
assert 1 == 1, "One does not equal one."
Test2.py
from Helper import baseTest
import Test1
class test2(baseTest):
def setUp(self):
super(test2, self).setUp('bar')
def test_something(self):
Test1.test_somehing()
現在,我有這個以前的工作,當我對測試1中的setUp和test2在他們的類,但一旦我讓他們都從baseTest繼承,我開始得到unbound method <method> must be called with Test instance as first argument (got nothing instead)
。有什麼建議麼?
你不能只是調用'Test1.test_something()'因爲'test_something'是一個實例方法,而不是一個類方法。你最好的選擇是使用'test2(Test1.test1)',這樣你就可以直接繼承這個測試方法,如果你沒有這個用例,不需要重新創建它。 – woozyking