Какие знаешь виды тестирования связанные с изменениями

«Какие знаешь виды тестирования связанные с изменениями» — вопрос из категории Контроль качества и отчётность, который задают на 23% собеседований Менеджер Проектов. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Функциональное тестирование (проверка новых/изменённых функций):

def test_new_feature():
    result = calculate_discount(100, 20)  # Новая функция
    assert result == 80

Регрессионное тестирование (проверка, что существующий функционал не сломан):

  • Полные регресс-тесты (все кейсы)
  • Частичные (только затронутые модули)

Дымовое тестирование (быстрая проверка ключевых функций после деплоя)

Санитарное тестирование (узкая проверка конкретного исправления):

test('Bugfix #1234: login with special chars', () => {
  expect(login('test@!')).toBe(true);
});

Особые случаи:

  • Тестирование миграций (проверка переноса данных)
  • A/B тестирование (сравнение старой и новой версии)
  • Канареечное тестирование (постепенный rollout изменений)

Все виды требуют чёткого понимания scope изменений и приоритезации тест-кейсов.