对所有测试进行分组Python

2024-03-28 17:46:39 发布

您现在位置:Python中文网/ 问答频道 /正文


我有两个模块:test1.py和test2.py。
test1.py

import unittest

class ArithTest (unittest.TestCase):

    def test_run (self):

        """ Test addition and succeed. """
        self.failUnless (1+1==2, 'one plus one fails!')
        self.failIf (1+1 != 2, 'one plus one fails again!')
        self.failUnlessEqual (1+1, 2, 'more trouble with one plus one!')

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

test2.py

^{pr2}$

-现在- 我想创建一个新的模块test3.py来测试test1.py和test2.py。我现在不怎么做,我在网上读到了关于西装测试的内容,但我不明白。 我不想再创建一个调用测试的方法,并在test3.py上调用它们。 我想把他们分组,然后调用test3.py,他们以Unitest的形式运行


Tags: 模块pyimportselfmainplusunittestone
1条回答
网友
1楼 · 发布于 2024-03-28 17:46:39

测试1.py

import unittest

class ArithTest (unittest.TestCase):

    def test_run (self):

        """ Test addition and succeed. """
        self.failUnless (1+1==2, 'one plus one fails!')
        self.failIf (1+1 != 2, 'one plus one fails again!')
        self.failUnlessEqual (1+1, 2, 'more trouble with one plus one!')

    def runTest(self):
        self.test_run()

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

测试2.py

^{pr2}$

测试3.py

from .test1 import ArithTest
from .test2 import AlgTest
import unittest

def suite_2():
    suite = unittest.TestSuite()
    suite.addTest(ArithTest())
    suite.addTest(AlgTest())

    return suite

if __name__ == '__main__':
    runner = unittest.TextTestRunner()
    test_suite = suite_2()
    runner.run(test_suite)

同时添加__init__.py

python3 -m folder_name.test3运行它

相关问题 更多 >