unittest
是 Python 标准库中的一个模块,用于编写和运行单元测试。它提供了一个框架,让开发者可以轻松地编写测试用例、组织测试套件以及执行测试。下面是一个简单的示例,演示如何使用 unittest
模块:
import unittest
def add(a, b):
return a + b
class TestAddFunction(unittest.TestCase):
def test_add_positive_numbers(self):
self.assertEqual(add(2, 3), 5)
def test_add_negative_numbers(self):
self.assertEqual(add(-1, 1), 0)
if __name__ == '__main__':
unittest.main()
在这个例子中,我们首先定义了一个 add()
函数,然后创建了一个继承自 unittest.TestCase
的测试类 TestAddFunction
。在这个类中,我们定义了两个测试方法 test_add_positive_numbers()
和 test_add_negative_numbers()
,它们分别测试 add()
函数对于正数和负数的行为是否正确。
在每个测试方法中,我们使用 self.assertEqual()
断言方法来比较函数的实际输出与预期输出是否相等。如果测试通过,则没有任何输出;如果测试失败,则会显示详细的错误信息。
最后,通过 unittest.main()
来执行测试。这将会运行所有以 test_
开头的测试方法,并显示测试结果。
unittest
还提供了丰富的断言方法以及其他辅助功能,如 setUp()
和 tearDown()
方法用于在测试前后执行初始化和清理操作,以及测试装置等。
总之,unittest
是 Python 中用于编写和执行单元测试的强大工具,能够帮助开发者确保代码的质量和稳定性。