Sobes.tech
Middle

Tell me about the Triple A principle.

sobes.tech AI

Answer from AI

Principle AAA (Arrange, Act, Assert) is a pattern for organizing test scenario code, widely used in unit testing and integration testing. It makes tests more readable, understandable, and easier to maintain.

Arrange:

  • Setting up all necessary prerequisites (objects, data, states) for executing the tested action.
  • Initializing the object or system under test.
  • Preparing test data.

Act:

  • Performing the action that needs to be tested.
  • Calling a method, function, or sending a request.

Assert:

  • Checking the result of the action.
  • Comparing the actual result with the expected one.
  • Using assert calls to confirm correct behavior.
// Example of a test with AAA
@Test
void testAddition() {
    // Arrange
    Calculator calculator = new Calculator();
    int a = 5;
    int b = 3;
    int expectedSum = 8;

    // Act
    int actualSum = calculator.add(a, b);

    // Assert
    assertEquals(expectedSum, actualSum, "The sum of the numbers should be correct");
}

Applying Triple A helps clearly separate the test steps, which simplifies understanding its purpose and logic.