我想在小型自包含程序中使用带有单元测试的 Python 3.3,即我不想将其拆分为命令行部分和“功能”部分,如果它在自身上启动,则可以对其进行测试命令行。
所以我有这个小程序:
import unittest
def stradd(a, b):
return a + b
class test_hello(unittest.TestCase):
def test_1(self):
self.assertEqual(stradd("a", "b"), "ab")
unittest.main()
print(stradd("Hello, ", "world"))
不幸的是, print() 永远不会到达,因为 unittest.main() 退出了程序。即使它不会退出,它也会将我在正常操作中不想看到的各种输出打印到屏幕上。
只要没有错误,有没有办法静默运行测试?当然,如果某些事情不起作用,他们应该大声抱怨。
我已经看到Run python unit tests 作为程序的一个选项,但这也不能回答我的问题。