Не удалось подключиться к браузеру Firefox 3.x с помощью метода Browser.AttachTo <FireFox>в WatiN 2.0 RC1 - PullRequest
0 голосов
/ 19 марта 2010

Я использую API автоматизации HTTPWatch для запуска нового экземпляра Firefox:

HttpWatch.Controller ct = new HttpWatch.Controller();
HttpWatch.Plugin plugin = ct.FireFox.New("");
plugin.GotoURL("http://www.google.com");

Эти коды могут успешно запустить браузер Firefox. Тогда я хочу управлять браузером в WatiN 2.0:

FireFox ff = Browser.AttachTo<FireFox>(Find.ByTitle("Google"));

WatiN не смог найти окно Firefox (в Firefox был добавлен плагин JSSH). Но тот же тест на IE 7 в порядке.

Я даже пытался открыть окно Firefox вручную и зайти на страницу google.com. WaitN в IE7 можно подключить к браузеру, но Firefox не удалось.

Что-то не так с моими кодами? Или любой другой совет? Заранее спасибо!

Вот конфиг для моей среды:

  • ОС: Windows XP Pro SP2
  • WatiN: 2.0 RC1
  • Браузер: IE 7, Firefox 3.0 / 3.5 / 3.6 с плагином JSSH

Ответы [ 3 ]

1 голос
/ 19 марта 2010

Две вещи, которые нужно проверить:

Сначала вызов Browser.Attach, кажется, сломался в 2.0 RC1, насколько я знаю.Его можно заменить на что-то вроде:

FireFox ff = (FireFox)Browser.AttachTo(typeof(FireFox),Find.ByTitle("Google"));

Также вам может потребоваться обновить плагин JSSH, если вы используете Firefox 3.6, тот, который включен в бинарный файл WatiN 2.0 RC1, не совместим с ним.

Его можно найти здесь: http://wiki.openqa.org/display/WTR/FireWatir+Installation

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

Недавно было внесено серьезное изменение, которое сделало WatiN независимым от браузера и позволяет тестировщикам создавать текстовое приспособление браузера, которое будет запускать тесты на указанном браузере без необходимости кодировать его специально встроенным.

Я опубликую что-то более конкретное, когда найду код; Я изменил назначения и теперь работаю с TFS 2010 вместо WatiN (не мой выбор, я люблю WatiN!).

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

Спасибо, Vaudry, я обновил плагин JSSH с сайта, который вы дали для соответствия Firefox3.6. Но функция FireFox.AttachToFireFox () не была найдена в WatiN 3.0 RC1 и Beta1. Я использовал метод присоединения, предоставляемый HttpWatch для управления браузером Firefox:

HttpWatch.Controller ct = new HttpWatch.Controller();
HttpWatch.Plugin plugin = controller.Firefox.Attach("Default");

Это работает! Но .... метод подключения, предоставляемый HttpWatch, не работает для IE,

HttpWatch.Controller ct = new HttpWatch.Controller();
HttpWatch.Plugin plugin = ct.IE.Attach((SHDocVw.IWebBrowser2)ie.InternetExplorer);

Выше кода выдает исключение, подобное этому:

Не удалось загрузить файл или сборку Interop.SHDocVw, версия = 1.1.0.0, Culture = нейтрально, PublicKeyToken = db7cfd3acb5ad44e 'или одна из его зависимостей. Расположенный определение манифеста сборки делает не совпадает со ссылкой на сборку. (Исключение из HRESULT: 0x80131040)

Так сложно позволить WatiN 2.0 и HttpWatch работать вместе ...

...