在仅导入TestCase时运行Python unittest

2022-05-17 00:00:00 python python-3.x python-unittest

问题描述

我继承了一个测试目录,如下所示:

tests
  | this_test
    | __init__.py
    | this_test.py  
  | that_test
    | __init__.py
    | that_test.py

其中__init.py__为空,this_test.pythat_test.py如下所示:

from unittest import TestCase

class TestingThis(TestCase):

    def test_testing(self):
        self.assertTrue(1, 1)

它们真的就这么简单。但我的困惑来自于弄清楚如何运营这些业务。我经常看到这样的测试:

import unittest

class TestingThis(unittest.TestCase):

    def test_testing(self):
        self.assertTrue(1, 1)

if __name__ == '__main__':
    unittest.main()

我可以从python3 this_test.py目录中的终端运行它。我已经尝试了多种方法在终端中运行这些程序,但都没有成功,在我的搜索中也没有找到任何显示这种模式的东西。

这是测试的实际设计模式,还是只需要修复这些模式?


解决方案

您可以使用NOSE来运行测试,并以‘TEST_’开头作为测试文件的名称,以便NAT可以发现测试文件并在其中进行测试。

Example-test_this.py

相关文章