Перейти к содержимому

Фотография

OperaDriver


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 32

#1 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 25 октября 2011 - 09:33

Нашла кучу документации и примеров использования OperaDriver, но все они на java. Как работать с ним в C#? Подскажите, как оно вообще работает. Написано что нужно через RemoteWebDriver, в другом источнике, что и так обойтись можно. Как подключить этот драйвер и просто перейти на страницу?
  • 0

#2 stmark

stmark

    Опытный участник

  • Members
  • PipPipPipPip
  • 404 сообщений
  • ФИО:Докучаев Сергей
  • Город:Ярославль


Отправлено 26 октября 2011 - 09:21

Вот так можно через RemoteWebDriver:

[Test]
public void TestTest ()
{
  	DesiredCapabilities desiredCapabilities = DesiredCapabilities.Opera();
  	var remoteAddress = new Uri( "http://localhost:4444/wd/hub" );
  	driver = new RemoteWebDriver( remoteAddress, desiredCapabilities );
  	driver.Navigate().GoToUrl( "http://google.com" );
}

Замечания:
1. Возможно прийдётся переменную окружения PATH подредактировать, но как правило этого не требуется.
2. Стоит обновить Оперу.
3. Все подробности по использыванию этого драйвера можно найти вот здесь и здесь.
  • 1

#3 stmark

stmark

    Опытный участник

  • Members
  • PipPipPipPip
  • 404 сообщений
  • ФИО:Докучаев Сергей
  • Город:Ярославль


Отправлено 26 октября 2011 - 10:32

Да, если кто-нибудь сможет обойтись без RemoteWebDriver в .NET для работы с OperaDriver, то буду рад примеру, потому что в JAVA этот драйвер есть а для .NET уже отсутсвует.
  • 0

#4 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 26 октября 2011 - 11:42

Назрел еще один вопрос. Нужно выполнить такую команду
java -jar selenium-server-standalone-{VERSION}.jar
Где мне взять java? можно ссылку что скачать?
  • 0

#5 Skuayer

Skuayer

    Активный участник

  • Members
  • PipPip
  • 115 сообщений
  • ФИО:Жуков Анатолий Викторович
  • Город:Санкт-Петербург

Отправлено 26 октября 2011 - 11:44

Назрел еще один вопрос. Нужно выполнить такую команду

java -jar selenium-server-standalone-{VERSION}.jar
Где мне взять java? можно ссылку что скачать?


java.com =)
  • 0

#6 Demetri

Demetri

    Активный участник

  • Members
  • PipPip
  • 143 сообщений
  • ФИО:Дмитрий
  • Город:Podgorica, MNE


Отправлено 26 октября 2011 - 13:16

Лучше устанавливать сразу JDK, и брать его здесь:
http://www.oracle.co...oads/index.html

:)
  • 0
Hi! I'm a signature virus. Copy me into your signature to help me spread.

#7 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 26 октября 2011 - 18:06

Всем спасибо за ответы!
  • 0

#8 Iartemiev

Iartemiev

    Новый участник

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Иван
  • Город:Москва


Отправлено 26 октября 2011 - 18:48

блин, а я не могу запустить оперу, чтобы не плодить темы отписал тут.
правда на джаве, почему-то по таймауту вылетает.
ошибки в аттаче
                           URL url = new URL("http://localhost:4444/wd/hub");
                           DesiredCapabilities operaCapabilities = DesiredCapabilities.opera();
                           operaCapabilities.setBrowserName("opera");
                           operaCapabilities.setCapability("platform", "WINDOWS");
                           operaCapabilities.setVersion("11");
                           WebDriver Opera = new RemoteWebDriver(url, operaCapabilities);
                           t = new test(Opera, list_props, e_name, br_props.get(4), "Opera");
                           hor = t.start(hor, sheet, case_count);

хех осталось чуть-чуть, и соберу все браузеры)

Прикрепленные файлы

  • Прикрепленный файл  error.txt   8,88К   12 Количество загрузок:

  • 0

#9 Iartemiev

Iartemiev

    Новый участник

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Иван
  • Город:Москва


Отправлено 28 октября 2011 - 05:05

Ни у кого не возникало чего-либо подобного?
  • 0

#10 Iartemiev

Iartemiev

    Новый участник

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Иван
  • Город:Москва


Отправлено 30 октября 2011 - 19:45

оказалось длостаточно добавить окружение(
operaCapabilities.setCapability("opera.binary", "c:\\Program Files\\Opera\\opera.exe");

теперь почему-то опера дисконектится, если я пытаюсь заюзать плагин, причём судя по всему сам плагин загшружается.

org.openqa.selenium.WebDriverException: Problem encountered : DISCONNECTED

Build info: version: '2.8.0', revision: '14056', time: '2011-10-06 12:41:26'

System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.6.0_26'

Driver info: driver.version: OperaDriver; duration or timeout: 764 milliseconds

Build info: version: '2.8.0', revision: '14056', time: '2011-10-06 12:42:36'

System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.6.0_26'

Driver info: driver.version: RemoteWebDriver

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:147)

at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:113)

at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:415)

at org.openqa.selenium.remote.RemoteWebElement.execute(RemoteWebElement.java:232)

at org.openqa.selenium.remote.RemoteWebElement.click(RemoteWebElement.java:73)

at selenium_autotests.Data.Enter_conference.start_c(Enter_conference.java:47)


сталкивался кто с этим?
  • 0

#11 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 31 октября 2011 - 13:39

DesiredCapabilities desiredCapabilities = DesiredCapabilities.Opera();
        var remoteAddress = new Uri("http://localhost:4444/wd/hub");
        IWebDriver driv = new RemoteWebDriver(remoteAddress, desiredCapabilities);
        driv.Navigate().GoToUrl("http://mail.ru");
        driv.Navigate().GoToUrl("http://yandex.ru");
При запуске программы зависает сама опера и появляется ошибка:
15:39:02.502 WARN - Exception thrown
com.opera.core.systems.scope.exceptions.ResponseNotReceivedException: No response in a timely fashion.
Build info: version: '2.11.0', revision: '14431', time: '2011-10-28 16:27:42'
Может что то нужно добавить?
  • 0

#12 stmark

stmark

    Опытный участник

  • Members
  • PipPipPipPip
  • 404 сообщений
  • ФИО:Докучаев Сергей
  • Город:Ярославль


Отправлено 31 октября 2011 - 14:40

Вот конкретно с этими ошибками не сталкивался, но в большинстве случаев эксепшин в этом месте вылетал из-за долго старта самого браузера. А долго стартовался он из-за различных причин: тормоза системы, кривые настройки браузера, конфликты с ранее запущенными программами и т.д.
  • 0

#13 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 31 октября 2011 - 14:56

А какие именно настройки Оперы? Может есть что-то стандартное. Опера обновлена.
  • 0

#14 stmark

stmark

    Опытный участник

  • Members
  • PipPipPipPip
  • 404 сообщений
  • ФИО:Докучаев Сергей
  • Город:Ярославль


Отправлено 01 ноября 2011 - 07:46

Мне хватило сброса до дефолтных настроек и выключения всех дополнений/виджетов. Вообщем стоит просто отдельно запустить оперу, если долго будет открываться, то это оно, если довольно быстро (<10 сек), то видимо проблема в другом.
  • 0

#15 Iartemiev

Iartemiev

    Новый участник

  • Members
  • Pip
  • 17 сообщений
  • ФИО:Иван
  • Город:Москва


Отправлено 02 ноября 2011 - 04:36

DesiredCapabilities desiredCapabilities = DesiredCapabilities.Opera();
        var remoteAddress = new Uri("http://localhost:4444/wd/hub");
        IWebDriver driv = new RemoteWebDriver(remoteAddress, desiredCapabilities);
        driv.Navigate().GoToUrl("http://mail.ru");
        driv.Navigate().GoToUrl("http://yandex.ru");
При запуске программы зависает сама опера и появляется ошибка:
15:39:02.502 WARN - Exception thrown
com.opera.core.systems.scope.exceptions.ResponseNotReceivedException: No response in a timely fashion.
Build info: version: '2.11.0', revision: '14431', time: '2011-10-28 16:27:42'
Может что то нужно добавить?

operaCapabilities.setCapability("opera.binary", "c:\\Program Files\\Opera\\opera.exe");

попробуй так, у меня раньше тоже не запускалось по этой причине
  • 1

#16 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 02 ноября 2011 - 14:29

operaCapabilities.setCapability("opera.binary", "c:\\Program Files\\Opera\\opera.exe");

попробуй так, у меня раньше тоже не запускалось по этой причине

Так действительно помогло, спасибо!
Но появилась еще проблема. На реальной машине все как по маслу, а вот на виртуалке следующее:
Unhandled Exception: OpenQA.Selenium.WebDriverException: Unexpected error. System.Net.WebException: Unable to connect to the remote server 
---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 127.0.0.1:4444
Как бороться с этим?
  • 0

#17 Demetri

Demetri

    Активный участник

  • Members
  • PipPip
  • 143 сообщений
  • ФИО:Дмитрий
  • Город:Podgorica, MNE


Отправлено 02 ноября 2011 - 14:35

RemoteWebDriver-сервер запущен?
  • 0
Hi! I'm a signature virus. Copy me into your signature to help me spread.

#18 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 03 ноября 2011 - 12:48

RemoteWebDriver-сервер запущен?

Да, запускаю таким образом:
Process serveropera = new Process();
ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("\"C:\\Program Files (x86)\\Java\\jre6\\bin\\java\"", " -jar " + "\"C:\\Program Files (x86)\\Opera\\selenium-server-standalone-2.11.0.jar\"");
serveropera.StartInfo = myProcessStartInfo;
serveropera.Start();

  • 0

#19 Demetri

Demetri

    Активный участник

  • Members
  • PipPip
  • 143 сообщений
  • ФИО:Дмитрий
  • Город:Podgorica, MNE


Отправлено 04 ноября 2011 - 18:33

RemoteWebDriver-сервер находится на той же машине, с которой тесты запускаются? Или тесты запущены с реальной машины, а сервер запущен в виртуальной машине?
  • 0
Hi! I'm a signature virus. Copy me into your signature to help me spread.

#20 leala

leala

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Туранга Лила

Отправлено 06 ноября 2011 - 01:57

RemoteWebDriver-сервер находится на той же машине, с которой тесты запускаются? Или тесты запущены с реальной машины, а сервер запущен в виртуальной машине?

Сервер на виртуалке
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных