Sobes.tech
Junior

Разкажи за принципа Triple A (Arrange, Act, Assert).

sobes.tech AI

Отговор от AI

Принципът Triple A (Arrange, Act, Assert) е модел за организиране на тестовия код, широко използван в единични и интеграционни тестове. Той разделя всеки тест на три логически части:

  1. Arrange (Подготовка): В тази част се настройва тестовата среда, създават се необходимите обекти, mocks, stubs и се установява тяхното начално състояние. Подготвя се всичко, което е необходимо за изпълнение на действието, което искаме да тестваме.
  2. Act (Действие): Това е единствената операция, която проверяваме в този тест. Извиква се тестираният метод, функция или компонент.
  3. Assert (Проверка): В тази част се проверява резултатът от действието. Сравнява се реалният резултат (връщаната стойност, промяната в състоянието на обекта, извикването на друг метод и т.н.) с очаквания резултат. Ако съвпадат, тестът се счита за успешно преминал.

Пример на Python:

# arrange
user = User("Alice")
item = Item("Book", 10)
cart = ShoppingCart(user)

# act
cart.add_item(item)

# assert
assert len(cart.items) == 1
assert cart.items[0].name == "Book"
assert cart.calculate_total() == 10

Този принцип прави тестовете по-лесни за четене, разбиране и поддръжка, тъй като ясно се вижда какво точно се тества и при какви условия.