Fiz*_*izi 5 python python-unittest
我试图只运行一个类中提供的单元测试中的单个测试。所以假设
class MytestSuite(unittest.TestCase):
def test_false(self):
a = False
self.assertFalse(a, "Its false")
def test_true(self):
a = True
self.assertTrue(a, "Its true")
Run Code Online (Sandbox Code Playgroud)
我只想运行test_false。根据本站点和在线提供的问答,我在主类中使用了以下代码行
if __name__ == "__main__": #Indentation was wronng
singletest = unittest.TestSuite()
singletest.addTest(MytestSuite().test_false)
unittest.TextTestRunner().run(singletest)
Run Code Online (Sandbox Code Playgroud)
尝试添加测试时,我不断收到错误消息。主要是:
File "C:\Python27\Lib\unittest\case.py", line 189, in __init__
(self.__class__, methodName))
ValueError: no such test method in <class '__main__.MytestSuite'>: runTest
Run Code Online (Sandbox Code Playgroud)
我的班级需要特定的runTest方法吗?有没有一种方法可以运行可能属于不同套件的特定测试。例如:方法A属于套件类1和B法属于套件类2。令人惊讶的是,事实证明这是很难在网上找到的。有许多通过命令行而不是从程序本身进行操作的示例。与往常一样,我们将提供任何帮助。
您只是将错误的内容传递给addTest。无需传递绑定方法,您需要传递一个新实例TestCase(在您的情况下为的实例MyTestSuite),该实例由您希望其运行的单个测试的名称构成。
singletest.addTest(MyTestSuite('test_false'))
Run Code Online (Sandbox Code Playgroud)
Docs上有很多其他信息和示例。
| 归档时间: |
|
| 查看次数: |
1034 次 |
| 最近记录: |