1.TestCase
是最小的测试单元,用于检查特定输入集合的特定返回值,可以用来创建新的测试用例。
2.Test Suite
是测试用例、测试套件或两者的集合,用于组装一组要运行的测试。
3.Test Runner
用于协调测试的执行并(通过图形界面、文本界面、返回特殊值)向用户提供结果。
4.TestFixture
代表执行一个或多个测试所需的环境准备,以及关联的清理动作。
例如:创建临时或代理数据库、目录,或启动服务器进程。
import unittest from unittest1.calculator import Calculator class TestCalculator(unittest.TestCase): # 测试用例前置动作 def setUp(self): print("test start:") # 测试用例后置动作 def tearDown(self): print("test end") def test_add(self): c = Calculator(3, 5) result = c.add() self.assertEqual(result, 8) def test_sub(self): c = Calculator(5, 6) result = c.sub() self.assertEqual(result, -1) def test_mul(self): c = Calculator(5, 6) result = c.mul() self.assertEqual(result, 10) def test_div(self): c = Calculator(9, 3) result = c.div() self.assertEqual(result, 3) if __name__ == '__main__': # 创建测试套件 suit = unittest.TestSuite() suit.addTest(TestCalculator("test_add")) suit.addTest(TestCalculator("test_sub")) suit.addTest(TestCalculator("test_mul")) suit.addTest(TestCalculator("test_div")) # 创建测试运行器 runner = unittest.TextTestRunner() runner.run(suit)