Книга: Идеальный программист. Как стать профессионалом разработки ПО
Выбор интерфейса для тестирования
Выбор интерфейса для тестирования
И все же лучше писать тесты, которые активизируют функции тестируемой системы через API, а не через графический интерфейс. При этом должен использоваться тот же API, который используется графическим интерфейсом. В этом нет ничего нового: специалисты в области проектирования десятилетиями говорили нам, что графический интерфейс нужно отделять от бизнес-логики.
Тестирование через графический интерфейс всегда создает проблемы (если вы не ограничиваетесь тестированием одного лишь графического интерфейса). Дело в том, что графический интерфейс с большой вероятностью изменится, а это делает тесты весьма непрочными. Когда каждое изменение интерфейса нарушает работу тысячи тестов, вы либо начинаете отказываться от тестов, либо перестаете изменять графический интерфейс. Ни один из этих вариантов хорошим не назовешь. Итак, пишите тесты бизнес-логики так, чтобы они проходили через API, находящийся за графическим интерфейсом.
Некоторые приемочные тесты определяют поведение самого графического интерфейса. Естественно, такие тесты должны проходить через графический интерфейс. Однако они не тестируют бизнес-логику, а следовательно, не требуют ее связывания с графическим интерфейсом. По этой причине на время тестирования самого графического интерфейса лучше изолировать его от бизнес-логики и заменить последнюю заглушками.
Ограничьтесь минимальным объемом тестов графического интерфейса. Они слишком непрочны из-за изменчивости графического интерфейса. Чем больше у вас тестов графического интерфейса, тем меньше вероятность того, что они останутся неизменными.
- Преждевременная точность
- Принцип неопределенности
- Стремление к точности оценки
- Поздняя неоднозначность
- Приемочные тесты
- Что такое «выполнено»?
- Взаимодействие сторон
- Автоматизация
- Дополнительная работа
- Кто и когда пишет приемочные тесты?
- Роль разработчика
- Обсуждение тестов и пассивно-агрессивная позиция
- Приемочные тесты и модульные тесты
- Графические интерфейсы и другие сложности
- Выбор интерфейса для тестирования
- Непрерывная интеграция
- Стоп-сигнал
- Выбор стратегии ценообразования
- Выбор аппаратного обеспечения для InterBase
- Рекомендации по выбору архитектуры: Classic или SuperServer?
- Ограничение результатов выборки FIRST
- Выбор спутника жизни
- 1. Унарная операция выборки
- 1. Операция выборки.
- Отчет о выборе ERP-системы
- Не допускайте того, чтобы поток пользовательского интерфейса блокировался на длительное время
- 2.6.2. Выбор вариантов бронирования услуг контрагентов
- Глава 4 Поиск и выбор идеи
- Глава 2 Выбор стратегии интернет-маркетинга