В Java, запуск теста в селене с объектом DefaultSelenium, как найти браузер, на котором запущен тест? - PullRequest
3 голосов
/ 22 июля 2010

Рассмотрим простой объект DefaultSelenium

DefaultSelenium sel = new 
      DefaultSelenium("http://localhost:8080/myapp",4444,"*iexplore","/myAppLevel1");

Теперь мой сервер настроен с опцией -forcedBrowserMode "* firefox" в командной строке при запуске.Однако у меня есть 2 разных пакетных файла для запуска Сервера, один принудительно запущен в Firefox, другой - в IE.К вашему сведению, -forcedBrowserMode переопределяет настройки внутри экземпляра Java-объекта.

Проблема в Java, не могу найти способ определить, в каком браузере запущен мой объект DefaultSelenium ...думал что-то вроде:

sel.getBrowserName();

Но ничего подобного не существует.Есть ли другие творческие способы сделать это?

Мне нужно знать, потому что в веб-приложении GWT, чтобы нажать на кнопку, вам нужно сделать это по-другому в зависимости от браузера.Кроме того, вы можете удивиться, почему я даже использую -forcedBrowserMode, потому что тогда я могу использовать пользовательские настройки firefox / ie для установки на тестирование.

Заранее спасибо за помощь!

1 Ответ

1 голос
/ 22 июля 2010

Я думаю, что вы можете получить браузер, выполнив некоторый JavaScript, например, проверьте navigator.userAgent или любой специфический для браузера объект, например document.defaultView будет иметь значение null в IE, а не NULL в FF, что-то вроде этого:

DefaultSelenium sel = ...
String res = sel.getEval("document.defaultView ? false : true");
boolean isIE = "true".equals(res);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...