Пример, есть форма создания и есть форма редактирования. Один тест реализует создание записи. Другой редактирование записи.
Для второго теста нужна уже созданная запись, либо эту запись нужно создать. Создавать запись долго. А брать созданную, встает вопрос "а какую".
Есть такое понятие как заглушки. Как это лучше реализовать, как вы это реализовываете на selenium?
Создание заглушек для тестов
Автор BoBuS, 23 дек 2011 09:06
Сообщений в теме: 3
#1
Отправлено 23 декабря 2011 - 09:06
#2
Отправлено 23 декабря 2011 - 09:25
написать скрипт, который будет создавать в базе нужные записи вам. это будет быстрее, чем через селениум.
мы так решали подобные вопросы, перед тестом генерятся нужные аккаунты с тестовыми данными, на которых происходит тестирование.
мы так решали подобные вопросы, перед тестом генерятся нужные аккаунты с тестовыми данными, на которых происходит тестирование.
#3
Отправлено 23 декабря 2011 - 11:37
Спасибо за ответ.
Кто-нибудь использует mock объекты для этого?
Кто-нибудь использует mock объекты для этого?
#4
Отправлено 23 декабря 2011 - 11:56
У нас используется примерно такая схема. Есть понятие требований к объекту со стороны теста, они выражаются проставлением объекту свойств которые нужны, остальные свойства null, получается как бы шаблон. Потом из этого объекта создаётся Hibernate'овый example и запрашивается первый подходящий под критерии объект из базы, он блокируется (не на уровне SQL конечно) и используется запросившим тестом эксклюзивно, после завершения освобождается. Если подходящий объект не найден, то он создаётся (методы зовутся #findOrCreate), поля которые были null при этом заполняются случайными валидными данными.
Таким образом тест просто предъявляет требования к объекту который хочет использовать и так или иначе получает его. В процессе прогона тестов на почти пустой базе подходящих разным тестам объектов становится больше и скорость выполнения тестов постоянно растёт.
Таким образом тест просто предъявляет требования к объекту который хочет использовать и так или иначе получает его. В процессе прогона тестов на почти пустой базе подходящих разным тестам объектов становится больше и скорость выполнения тестов постоянно растёт.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных