如何使用nose在测试脚本中按顺序运行测试?

时间:2015-05-06 17:33:38

标签: nose pytest nosetests python-unittest python-nose

我想按照unittest默认情况下按字母顺序编写的顺序运行我的测试。

import unittest

class test2(unittest.TestCase):

   def test1(self):
      pass

   def test0(self):
      pass

class test1(unittest.TestCase):

   def testB(self):
      pass

   def testA(self):
      pass

在此示例中,我想设置unittestnosetests以按test1,test0,testB和testA的顺序运行测试。当我使用python -m unittest -v mytestmodule命令行运行测试时 要么 nosetests mytestmodule

我应该使用什么命令行参数?

2 个答案:

答案 0 :(得分:1)

我使用提供here.

的PyTest排序插件找到了解决方案

我使用py.test MyTestModule.py -vv运行测试,结果如下,测试按其外观顺序运行:

MyTestModule.py::test2::test1 PASSED
MyTestModule.py::test2::test0 PASSED
MyTestModule.py::test1::testB PASSED
MyTestModule.py::test1::testA FAILED

答案 1 :(得分:0)

没有这样的命令行参数。你有几个选择:

1)重命名测试。在您的示例中,您只需切换test1test0的名称即可。这个建议已经提出before

2)使用this link处的插件。