2

Я понял, что мне нужен полноценный инструмент для автоматизации браузера для тестирования взаимодействия пользователей с нашей библиотекой виджетов JavaScript. Я использовал qunit, начиная с модульного тестирования, а затем я неохотно начал включать все больше и больше функциональных тестов. Это была плохая идея: попытка имитировать много пользовательских действий с помощью JavaScript. Проблемы с синхронизацией вышли из-под контроля и сделали набор слишком хрупким. Теперь я трачу больше времени на тестирование тестов, а затем развиваю.Инструмент веб-автоматизации

Можно ли найти инструмент автоматизации браузера, который работает в: Windows XP: IE6,7,8, FF3 OSX: Safari, FF3 ?

  • Я изучил SeleniumIDE и RC, но, похоже, некоторые проблемы IE8.

  • Я также кое-что видел о веб-браузере Google, который, похоже, работает с Selenium.

  • Наша организация имеет лицензии для IBM Rational Functional Tester, но я не думаю, что это будет работать на MAC.

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

Спасибо!

ответ

1

Selenium - это, вероятно, лучший выбор из инструментов, которые вы упомянули. Каковы проблемы с IE8? Вы можете проверить HttpUnit, чтобы узнать, соответствует ли это вашим потребностям.

+0

Я еще не использовал Selenium, но видел несколько комментариев на разных форумах, говорящих о проблемах с IE8. Эта поддерживаемая страница браузера указывает, что она не поддерживает IE8. http://tinyurl.com/cdzdk6. Любые способы обойти это или эта страница поддержки устарела? Я также прочитал, что maintaner of Selenuim довольно перегружен и не очень много работал над этим. Я понимаю, что это с открытым исходным кодом и не против получения рекомендации для не-открытого источника, если что-то будет отвечать моим потребностям. – Aaron

+1

Я обновил документацию, чтобы сказать, что он поддерживает IE8. – AutomatedTester

+0

Мы использовали его в IE8 без каких-либо проблем. Еще один инструмент, который вы, возможно, захотите рассмотреть, - Watir/Watij. –

0

Я в одной лодке. Это сложная проблема. Windmill и Selenium - 2 лучших, которые я нашел. Хотя у них обоих есть проблемы. Selenium может записывать только скрипты в Firefox, и мне не удалось заставить цепочку прокси работать, как рекламируется. Ветряная мельница, которую вы можете записать в любом браузере, и вы можете, возможно, настроить прокси-сервер, чтобы добавить туда дополнительную логику, но механизм js для записи на разных загрузках страниц был по моему опыту очень хрупким, по крайней мере, в приложении, которое я должен проверить.

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

+0

Я думаю, что я сделаю, попробую несколько тестовых примеров с Windmill и с Selenium. Я отчитаю. Спасибо за ввод. – Aaron

+0

«Я не думаю, что кто-то может понять это правильно, если есть несколько браузеров, которые нужно поддерживать». Проверьте Сахи (http://sahi.co.in/). Шутки в сторону. –

4

Я бы рекомендовал использовать Selenium, но я говорю это как Selenium Committer.

Selenium работает в любом браузере, поддерживающем JavaScript, поскольку фреймворк написан на JavaScript. Это означает, что если ваш браузер на любой ОС поддерживает JavaScript, он будет запущен в Selenium. Это документация, устаревшая, вы можете видеть, что, поскольку речь идет об IE8b1 и IE9, предварительный просмотр отсутствует.

Selenium и WebDriver (который не является вещью Google с момента ее создания в ThoughtWorks) в настоящее время сливаются, поскольку у них есть свои сильные и слабые стороны. Текущая объединенная работа будет называться Selenium 2, и вы можете начать использовать альфа-версию сейчас на http://code.google.com/p/selenium/. Он по-прежнему будет работать на любой ОС, поскольку это все еще является главной движущей силой выполняемой работы.

Selenium IDE работает только в Firefox, потому что это дополнение к Firefox.

Я лично избегаю Rational Functional Tester, потому что у него есть много недостатков, которые его даже не стоит созерцать.

Если вы начинаете с селеном Есть некоторые учебники на моем сайте в http://www.theautomatedtester.co.uk

0

Может быть, посмотреть на SIKULI. Это другая парадигма, но, в зависимости от того, что вы хотите точно проверить, она может выполнять эту работу и работать с любым браузером на любой платформе. Посмотрите на их official blog для некоторых примеров взаимодействия с веб-приложениями.

1

Selenium RC - отличный инструмент, если вы потратите время на его использование. Со значительными изменениями в существующей библиотеке я получил ее для выполнения всех моих требований к тестированию переднего конца.

Путаница, которую вы имеете о Webdriver, понятна. Selenium 2 находится в разработке и станет объединением Webdriver и Selenium. Выезд: http://www.youtube.com/watch?v=RQD4EzWI4qk, чтобы получить более подробную информацию.

Единственным браузером, который я нашел непригодным для использования с Selenium, является IE6. IE7 и IE8 работают отлично, как Firefox (который я модифицировал, чтобы включить firebug для целей отладки).

+0

До сих пор мне удалось заставить его работать с FF3 (WIN и MAC) и IE8. Потребовалось некоторое испорчение с Python, чтобы получить мой конкретный тест для работы с IE8, и так получилось, что я очень хорошо знаком с ключевыми событиями, специфичными для браузера, и тем, как они работают. Я жду, чтобы попробовать IE6. – Aaron

+0

Как примечание, обновление до FF3.5, похоже, нарушило Java RC для меня. Я получил 3,6 на работу, но он уничтожил обновления моего сервера (например, установку jQuery). – dhackner

0

Итак, я написал некоторые из моих более проблемных тестов в Selenium RC, используя драйвер Python. Это был лучший опыт, чем писать те же тесты в чистом JavaScript, но у меня все еще были некоторые из тех же проблем.

Тестирование чего-то похожего на виджет автозаполнения ajax, предназначенный для того, чтобы развернуть часть кода в зависимости от IE или Firefox, и я все еще не могу получить типKeys или комбинацию типа с typeKeys для работы в Safari.

Итак, я не уверен, что если у вас есть кросс-браузер, то обширные тесты ui немного нереалистичны.

Должен ли я попробовать webdriver/Selenium 2? Будет ли это улучшаться, или этот продукт еще не готов к прайм-тайм? Как привязка Python для этого? Я не знаю Java, но, если потребуется, я бы изучил некоторые.

2

Try Sahi (http://sahi.co.in/) Он работает в разных браузерах и операционных системах. Он имеет мощный рекордер и отличные API для идентификации объектов. Он поддерживает HTTPS, прокси-туннелирование и т. Д., И имеет драйверы в скрипте sahi, java и ruby. Он также имеет встроенное параллельное воспроизведение. Это 5-летний зрелый проект, размещенный на SourceForge, с выпуском почти каждый месяц.

Он автоматически ожидает загрузки AJAX и страницы и не использует XPath для идентификации объекта. Он также обрабатывает сайты с динамическими идентификаторами.

Смежные вопросы