我有两个带有功能测试的类
class VehicleTest(unittest.TestCase):
def setUp(self):
self.browser = webdriver.Firefox()
def test_math(self):
self.assertEqual(1+1, 2)
class VehicleTestCase2(VehicleTest):
def setUp(self):
super(VehicleTestCase2, self).setUp()
self.do_some_additional_stuff()
def test_another_math(self):
self.assertEqual(2+2, 4)作为测试跑步者,我使用nosetests。当我转到测试目录中的控制台时,键入nosetests并按ENTER键,我看到3个测试按此顺序启动
VehicleTest.test_math, VehicleTestCase2.test_another_math, VehicleTest.test_math问:如何防止nosetests从子类启动父类测试?所以我只启动了这些测试
VehicleTest.test_math, VehicleTestCase2.test_another_math 我希望从launch中排除由VehicleTestCase2测试继承的测试。
发布于 2015-09-11 00:39:56
拆分VehicleTest,这样您就有了一个基类,其中只包含所有类的公共部分,然后创建一个包含test_math的类。类似于:
class VehicleTest(unittest.TestCase):
def setUp(self):
self.browser = webdriver.Firefox()
class VehicleTestCase1(VehicleTest):
def test_math(self):
self.assertEqual(1+1, 2)
class VehicleTestCase2(VehicleTest):
def setUp(self):
super(VehicleTestCase2, self).setUp()
self.do_some_additional_stuff()
def test_another_math(self):
self.assertEqual(2+2, 4)上面代码中的VehicleTest是您的基类,VehicleTestCase1是新类。
我不建议尝试找到一个技巧,让一个基类包含一系列测试,这些测试后来在一些派生类中被隐藏。这只会模糊你代码的逻辑。
https://stackoverflow.com/questions/32506220
复制相似问题