首页/开发/软件测试速查/单元测试 AAA 结构
测试基础与分层67 条

单元测试 AAA 结构

Arrange(准备)、Act(执行)、Assert(断言)三段式组织测试代码,使意图清晰、便于维护;由 Bill Wake 提出并被广泛采用。

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

AAA 示例

AAA 示例
def test_discount_applies_to_vip():
    # Arrange
    cart = Cart(items=[Item(price=100)], vip=True)
    # Act
    total = cart.total()
    # Assert
    assert total == 90
三段之间留空行、必要时加注释,评审时更快读懂用例意图。

易错点

  • 断言分散在 Act 中间,失败信息难解读
  • Arrange 过长且隐藏关键依赖,用例可读性下降

数据来源与参考

  • Bill Wake 提出的 Arrange-Act-Assert(2001)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌