Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Автоматизация тестирования

12.11.23 09:02
Re: Автоматизация тестирования
 
Программист коренной житель
в ответ alex445 11.11.23 23:36
По-моему, лучше тестировать на вещах, максимально приближенных к реальным, а не всяких моках. А что может быть ближе к реальному, чем копия реального? Копирнуть реальное - дело пары кликов, грубо говоря. А вот создать максимально приближенные к реальному подделки - тот ещё геморрой.

Тестировать надо определенную логику.

Если вернуться к примеру:

public void Foo (DbConnection db, UserProvider provider)
{
    UserService srv = new UserService (db);
    
    User user = srv.GetUser (provider);
    if (user != null)
    {
        user.Login ();
    }
}

Предположим, тебе надо протестировать, что при получении юзера вызывается функция Login.

Если тестировать на объектах, то тест может стать крассным из-за ошибки в GetUser, а значит написанный тест тестирует все, что угодно, но только не фунцкцию Foo :)

 

Перейти на