首页/开发/软件测试速查/Python unittest 基础
自动化测试66 条

Python unittest 基础

标准库 unittest 以 TestCase 类组织用例并提供断言方法族,python -m unittest discover 支持目录发现;pytest 能直接收集运行 unittest 用例,便于渐进迁移。

软件测试速查开发更新于 2026-10-12

用例示例

用例示例
import unittest


class TestCalc(unittest.TestCase):
    def setUp(self):
        self.calc = Calc()

    def test_divide(self):
        self.assertEqual(self.calc.divide(6, 3), 2)

    def test_divide_by_zero(self):
        with self.assertRaises(ZeroDivisionError):
            self.calc.divide(1, 0)

运行

运行
python -m unittest discover -s tests -p "test_*.py"

易错点

  • setUp 里做不可逆副作用(删数据、改配置),用例失败后环境无法继续
  • unittest 与 pytest fixture 混用,作用域理解不一致导致资源重复创建

数据来源与参考

  • Python 官方文档:unittest(docs.python.org)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌