Селен против SimpleTest против WatiN

Кажется, что между Selenium/WatiN и SimpleTest (который также имеет функции веб-тестирования).

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

Что касается запуска тестов, Selenium является более сложным, чем SimpleTest. Для SimpleTest вам просто нужно запустить PHP скрипт, который выполняет все тесты (клиент или браузер). Это означает, что любые настройки браузера или браузера, которые вы используете, вы можете просто перейти к тестовому URL, а он будет работать точно так же.

Что было бы полезно здесь, это некоторые комментарии от людей, которые использовали Selenium или WatiN: Почему Selenium так знаменит? Другими словами, , что будет главным преимуществом использования Selenium, например, через SimpleTest?

PS: Пожалуйста, исключайте такие причины, как "SimpleTest требует PHP"; что довольно очевидно, что PHP включен в большинство LAMP в любом случае.

Ответ 1

Поскольку SimpleTest касается только содержимого HTML на странице, вы не можете тестировать страницы с ним, которые полагаются на поведение JavaScript. В конце концов, это быстрый и функциональный компромисс.

  • Если вам нужна функция JavaScript или вы хотите протестировать поведение браузера, используйте Selenium.
  • Если вы хотите скорость и статические HTML-страницы, используйте SimpleTest.

BTW, Selenium может быть интегрирован в набор тестов PHPUnit: http://www.phpunit.de/manual/3.1/en/selenium.html

Ответ 2

Существует большая разница между веб-тестером SimpleTest и Selenium пакет:

  • Selenium работает с реальным браузером:
    • Каждый раз, когда запускается тест, запускается реальный Firefox или реальный Internet Explorer.
    • Все просмотры выполняются в этом реальном браузере.
    • Это означает, что вы получаете все функции Javascript в браузере - то есть вы можете протестировать полностью динамические веб-страницы.
  • Веб-тестер SimpleTest имитирует браузер:
    • Отправляется HTTP-запрос, выводится содержимое HTML
    • И содержимое HTML анализируется
    • Существует некоторый уровень возможностей для проверки файлов cookie и форм; но ничего о Javascript


Пара последствий и тем не менее:

  • Тесты Selenium занимают много времени, чтобы выполнить: запуск браузера и серфинг (который включает загрузку JS/CSS/изображений, отображение всего, включая рекламу,...), длинный и медленный
  • Тесты SimpleTest должны быть более быстрыми: отправлять HTTP-запрос, анализировать HTML и выполнять его
  • Selenium требует машину с графическим интерфейсом, чтобы запустить браузер, который является графическим программным обеспечением; что также затрудняет установку/настройку
  • Selenium позволяет вам тестировать богатые/динамические/javascript-приложения гораздо лучше, чем только выборка и анализ HTML
  • Если вы тестируете PHP-приложение, PHPUnit обычно считается намного лучше (он активно поддерживается и развивается, по крайней мере), что SimpleTest; и PHPUnit поддерживает тесты Selenium.


Я бы рекомендовал комбинацию обоих, если вы можете:

  • Протестируйте связанные с HTML элементы с помощью SimpleTest (или Zend_Test, если используете Zend Framework):
    • будет быстрее
    • те тесты не будут зависеть от браузера
  • Проверка динамических страниц с помощью Selenium

то есть. используйте лучшее из обоих инструментов; -)

Ответ 3

Чтобы добавить еще один вариант, TestPlan работает как с исходным кодом Selenium, так и с HTMLUnit, поэтому его можно использовать без нашего браузера. Язык сценариев прост и позволяет быстро создавать задачи автоматизации.

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

Ответ 4

Также обратите внимание, что simpletest требует, чтобы кодовая база drupal была исправлена. Вы не можете проверить свой сайт на точном зеркале вашего сайта.

С уважением.