Автоматизация браузеров Firefox и Chrome - PullRequest
20 голосов
/ 23 февраля 2010

Я ищу способ автоматизации нескольких браузеров ... Firefox и Chrome (на данный момент только для Windows) из внешнего приложения / процесса.

Есть ли способ сделать что-то вроде этого:

  1. Запустить браузер с URL
  2. Пусть браузер загрузит страницу, запустит скрипт и т. Д.
  3. Осмотрите DOM

Для справки, IE может быть автоматизирован с помощью объекта InternetExplorer.Application, который может быть создан в сценарии оболочки с использованием следующего javascript, а затем я могу пройти по DOM API:

var ie = new ActiveXObject('InternetExplorer.Application');

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

Ответы [ 2 ]

11 голосов
/ 23 февраля 2010

http://watin.sourceforge.net/

WatiN делает именно это, и я думаю, что они недавно добавили поддержку Chrome

Обновление от 22.06.2011: В настоящее время WatiN работает только в Firefox 2 и 3, а не в Firefiox 4 (и почти наверняка не в Firefox 5, который был выпущен сегодня). Кроме того, во время этого ответа предположительно добавлялась поддержка Chrome, но похоже, что она так и не была полностью запечена и теперь не указана в качестве поддерживаемой платформы на их домашней странице.

Также стоит отметить, что, по моему опыту, WatiN стал намного медленнее, когда я обновился до IE9. Я видел это на двух разных машинах, и переход на IE8 ускорил тестирование на обеих машинах.

Я до сих пор активно использую WatiN, но сейчас в основном для поведенческого проектирования и функционального регрессионного тестирования, которые обычно не зависят от браузера. Затем вручную выполните тестирование в FF и Chrome для всех тестов прогрессии.

Обновление от 22.09.2015: Элмуэ прав, похоже, над WatiN больше не ведется работа. Сейчас мы рассматриваем Selenium для наших автоматических приемочных испытаний: http://www.seleniumhq.org

0 голосов
/ 19 мая 2017

TestR позволит вам автоматизировать IE, FF и Chrome. Я начал работать над поддержкой Edge, но просто не успел.

https://github.com/BobbyCannon/TestR

Вы можете использовать пакет nuget.

https://www.nuget.org/packages/TestR/

Вот несколько примеров.

https://docs.epiccoders.com/Page/35/TestR

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...