Селен против SimpleTest против WatiN - PullRequest
10 голосов
/ 24 февраля 2010

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

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

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

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

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

Ответы [ 4 ]

14 голосов
/ 24 февраля 2010

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

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


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

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


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

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

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

9 голосов
/ 24 февраля 2010

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

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

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

0 голосов
/ 16 июля 2010

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

Привет.

0 голосов
/ 10 марта 2010

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

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

...