3

我已经解决这个问题一天了。:( 想不通。请帮忙。我有这个设置:

class Parent(object): pass # 常见的东西放在这里

class A(Parent, unittest.TestCase): pass # A stuff here

class B(Parent, unittest.TestCase): pass # B stuff here

我想使用鼻子测试只运行 B 类和父类的测试,因为 B 继承自父类。我以为我会使用 -m 或 --match 来放置类名,但它似乎不起作用。

默认匹配使用 --match is '(?:^|[\b_./-])[Tt]est'

有任何想法吗?

提前致谢!

4

1 回答 1

6

首先,查看Nose 关于测试选择的文档。这比您尝试做的要容易得多!如果所有测试类AB在一个名为 的文件中mytests.py,则此命令将只运行类的测试A

nosetests mytests.py:A

您可以进一步将执行限制为 class 的单个方法A

nosetests mytests.py:A.testOne

这些可以组合。要运行所有测试方法A并且只运行 的testTwo方法B,试试这个:

nosetests mytests.py:A mytests.py:B.testTwo
于 2013-04-16T00:12:36.993 回答