sla*_*hms 10 python unittest2 python-unittest
我正在寻找类似的问题,我无法找到问题的答案.
我在一个派生自unittest.TestCase的python类中编写了测试
class TestEffortFormula(unittest.TestCase)
Run Code Online (Sandbox Code Playgroud)
我需要给一个为了测试(请不要不告诉我,我不应该依赖测试的顺序,我只是做).
在我需要命令测试之前,我用来运行测试的命令是:
unittest.main(testRunner=TeamcityTestRunner())
Run Code Online (Sandbox Code Playgroud)
然后我想让订单消失,所以我尝试了以下内容:
loader = unittest.TestLoader()
loader.sortTestMethodsUsing(None)
loader.loadTestsFromTestCase(TestEffortFormula)
suite = loader.suiteClass()
Run Code Online (Sandbox Code Playgroud)
但从这里我不知道如何运行测试,特别是testRunner=TeamcityTestRunner()
像以前一样.
感谢您的帮助
选项1.
一个解决这个(作为一种变通方法)中的溶液在此给出 -这表明写入编号方法测试step1,step2等等,然后收集,并通过将它们存储dir(self)和它们产生一个test_方法,其try各为s.
不理想,但做你期望的.每个测试序列必须是单个TestClass(或者使那里给出的方法适应多个序列生成方法).
选项2.
另一个解决方案,也在链接的问题中,是您按字母顺序命名测试+数字排序,以便它们按顺序执行.
但在这两种情况下,都要编写单片测试,每个测试都在自己的测试类中.
PS我同意所有评论说单元测试不应该这样做; 但有些情况下,单元测试框架(如unittest和pytest)习惯于进行集成测试,这需要模块化的独立步骤才能有用.此外,如果QA无法影响Dev编写模块化代码,则必须完成这些事情.
| 归档时间: |
|
| 查看次数: |
4764 次 |
| 最近记录: |