Селен по сравнению с SimpleTest по сравнению с WatiN

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

Я попробовал Селен и нашел GUI большим создать тесты, поскольку Вы видите то, что продолжается и запись, не вводя все команды вручную.

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

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

PS: исключите причины как "SimpleTest, требует PHP"; это довольно очевидно, PHP, включен в большую часть ЛАМПЫ так или иначе.

10
задан Wernight 24 February 2010 в 11:42
поделиться

4 ответа

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

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

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

9
ответ дан 3 December 2019 в 17:20
поделиться

Независимо от структуры/архитектуры/шаблона, всегда нужно что-то, что отвечает на нажатие кнопки, на панели инструментов/меню или в простой форме. И вам нужно что-то, что говорит, если кнопка/меню должны быть включены. Поэтому интерфейс ICommand хорош для этого. Я согласен с Петоджем, тебе не нужен новый класс. Я написал простую реализацию, которая занимает 1 или 2 делегата, один для фактического ответа на клик (метод Execute) и дополнительный для состояния «enabled» команды. Таким образом, ViewModel не загромождается.

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

Для списка я связываю свойство SelectedItem со свойством в ViewModel. С помощью INotifyPropertyChanged любая часть кода может отреагировать на изменение.

Связь между ViewModels - это хороший вопрос. При необходимости использования различных видов на одном экране можно создать супермодель вида, содержащую модель вида каждого вида. Существуют довольно много рамок MVVM. Я использовал части Mark Smith's MVVM helpers , который является довольно легким и полезным.

-121--3702137-

Если они статические миди договоренностей вы можете использовать DAW с некоторыми мягкими подключаемыми модулями (например, http://www.cockos.com/reaper/ Cubase и т.д. и просто поставлять wavs\mp3 с вашим приложением...?

-121--4779896-

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

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


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

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


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

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

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

14
ответ дан 3 December 2019 в 17:20
поделиться

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

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

0
ответ дан 3 December 2019 в 17:20
поделиться

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

С уважением.

0
ответ дан 3 December 2019 в 17:20
поделиться
Другие вопросы по тегам:

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