Селен по сравнению с олдскульными основанными на POST/получать тестами

У нас есть значительная кодовая база с относительно высоким тестовым покрытием для страниц/форм, всех через ванильный POST/получать.

Теперь, мы - находка, сами перемещающаяся больше в пространство 'ajaxy', и не совсем возможно протестировать с, ПОЛУЧАЮТ/POST полные сценарии как регистрация пользователя или создание объекта, поскольку они включают много вызовов JavaScript/Ajax.

В то время как подобные вещи являются наиболее вероятными кандидатами на тестирование с Селеном, интересно, мы должны принять тестирование Селена через плату, оставив олдскульные тесты POST/получать в целом?

Преимущества внедрения Селена, кажется, слишком хороши - способность работать в значительной степени, то же ПОЛУЧАЕТ/POST тесты, но через диапазон браузеров.

Или я пропускаю что-то в своем преследовании прохладного и модного материала и угробил старые доказанные тесты POST/получать?

6
задан Bart 31 October 2012 в 15:30
поделиться

2 ответа

У обоих подходов есть свои преимущества и недостатки, поэтому я рекомендую использовать оба.

Selenium запускает настоящий браузер и имитирует взаимодействие пользователя с вашим веб-приложением, что может быть замечательно, если вы тестируете функции Ajax. Он может проверять, что элементы видны, и взаимодействовать с ними так же, как и пользователь.Еще одна потрясающая функция - это возможность делать скриншоты через Selenium, что может быть невероятно полезно при расследовании сбоев.

К сожалению, запуск браузера и переход к определенной странице / состоянию в вашем приложении может быть медленным, и вам понадобится много оборудования, если вы хотите протестировать одновременных пользователей (нагрузочное тестирование) с помощью Selenium.

Если вы просто хотите проверить, что ваш сервер отвечает HTTP 200 для определенных действий, или нагрузочный тест ваших приложений, или что ответ содержит определенные значения, то базовый POST / GET будет более подходящим.

Если вы все же решите использовать подход к тестированию, основанный на чистом Selenium, я бы порекомендовал изучить использование Selenium Grid или облачной службы, поскольку выполнение большого количества тестов с помощью Selenium может занять довольно много времени.

6
ответ дан 10 December 2019 в 00:34
поделиться

Я думаю, вам обязательно следует использовать тесты Selenium и POST / GET (Unit) вместе, потому что цель вашего модульного теста - проверить функциональность определенного раздела кода, но Selenium выполняет интеграционное тестирование вашего веб-приложения.

4
ответ дан 10 December 2019 в 00:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: