Logo
Section 1 / 11

使用AAA方法组织测试

学习使用AAA方法来组织测试。

导入

使用AAA方法组织测试

学习使用AAA方法来组织测试。

AAA 模式

AAA 代表 准备(Arrange)-执行(Act)-断言(Assert)。

  • 在 准备阶段(Arrange),我们初始化待测试的单元组件,包括创建所需的对象和测试数据。

  • 在 执行阶段(Act),我们运行需要验证的代码,通常是调用某个方法或函数。

  • 在 断言阶段(Assert),我们检查该方法的行为是否符合预期。

示例

以下通过 Calculator.java 类的代码来演示 AAA 模式。

1public class Calculator { 2 public int add(int a, int b) { 3 return a + b; 4 } 5 6 public int divide(int a, int b) { 7 return a / b; 8 } 9}

单元测试

1package io.educative.junit5; 2 3import org.junit.jupiter.api.DisplayName; 4import org.junit.jupiter.api.Test; 5 6import static org.junit.jupiter.api.Assertions.assertEquals; 7 8class CalculatorTest { 9 10 @Test 11 @DisplayName("Test Integer Addition") 12 void shouldTestIntegerAddition() { 13 14 // Arrange 15 Calculator calculator = new Calculator(); 16 17 // Act 18 int result = calculator.add(1, 2); 19 20 // Assert 21 assertEquals(3, result); 22 } 23}

CalculatorTest.java 是 Calculator.java 类的单元测试。我们可以观察到:

  • 准备(Arrange):初始化 Calculator 对象。
  • 执行(Act):调用需要验证的 add 方法。
  • 断言(Assert):验证 add 方法的返回结果是否符合预期。

如果你熟悉行为驱动开发(BDD)方法论,上述三个阶段分别对应其中的 Given(给定)、When(当)和 Then(那么)。

JUnit 5 简介

断言