Почему мы используем GUI-тесты?
"Мы" - это программисты, а не группа тестирования.
Почему - "группа тестирования" - понятно.
А почему программисты?
Поверьте - не от хорошей жизни.
Мы начинали с DUnit и Unit-тестов. В разрезе тестирования регресса и требований.
При этом мы тестировали "низкоуровневый" код. Код библиотек. Из которых потом составляется приложение.
И ОЧЕНЬ многое нам удалось ТУДА затащить.
Если мы находили проблему в КЛИЕНТСКОМ приложении, то мы её локализовывали. Выделяли необходимый вход/выход и писали "тест кода библиотек".
Но в какой-то момент мы упёрлись в проблему того, что мы не можем локализовать проблему ОТДЕЛЬНО в библиотеках.
Да и ИНФРАСТРУКТУРУ стало сложно настраивать и поддерживать.
Сложно это было.
Да и mock'ов (http://18delphi.blogspot.ru/2013/04/blog-post_7108.html) у нас НЕ БЫЛО.
Правда вместо mock'ов мы придумали "эталоны" (http://18delphi.blogspot.ru/2013/04/blog-post_8791.html), но и это нас до конца не спасло.
Посему и родилось GUI-тестирование. На уровне "программистов".
Зато мы получили возможность опосредованно тестировать и хранилище и сервер приложений "в режиме реального пользователя".
А вообще конечно к GUI-тестированию надо относиться осторожно. И по-максимуму - ИЗБЕГАТЬ его. Если конечно это возможно "малой кровью".
Ну кратко - вот так...
"Мы" - это программисты, а не группа тестирования.
Почему - "группа тестирования" - понятно.
А почему программисты?
Поверьте - не от хорошей жизни.
Мы начинали с DUnit и Unit-тестов. В разрезе тестирования регресса и требований.
При этом мы тестировали "низкоуровневый" код. Код библиотек. Из которых потом составляется приложение.
И ОЧЕНЬ многое нам удалось ТУДА затащить.
Если мы находили проблему в КЛИЕНТСКОМ приложении, то мы её локализовывали. Выделяли необходимый вход/выход и писали "тест кода библиотек".
Но в какой-то момент мы упёрлись в проблему того, что мы не можем локализовать проблему ОТДЕЛЬНО в библиотеках.
Да и ИНФРАСТРУКТУРУ стало сложно настраивать и поддерживать.
Сложно это было.
Да и mock'ов (http://18delphi.blogspot.ru/2013/04/blog-post_7108.html) у нас НЕ БЫЛО.
Правда вместо mock'ов мы придумали "эталоны" (http://18delphi.blogspot.ru/2013/04/blog-post_8791.html), но и это нас до конца не спасло.
Посему и родилось GUI-тестирование. На уровне "программистов".
Зато мы получили возможность опосредованно тестировать и хранилище и сервер приложений "в режиме реального пользователя".
А вообще конечно к GUI-тестированию надо относиться осторожно. И по-максимуму - ИЗБЕГАТЬ его. Если конечно это возможно "малой кровью".
Ну кратко - вот так...
Комментариев нет:
Отправить комментарий