t.me/atinfo_chat Telegram группа по автоматизации тестирования

принцип работы RC


(JustBush) #1

ребя, объяснить неграмотному, вот есть у меня selenium-server-standalone, запускаю его на win7, пишу пару строк кода на виртуалке, используя webdriver.Remote(ip_win7:4444, Chrome)... открывается хром, выполняется тест на win7... вопрос такой - есть ли разница при использовании следующих методов запуска тестов

1) используя selenium-server-standalone и webdriver.Remote(ip_win7:4444, Chrome)

webdriver.Remote("http://192.168.121.109:4444/wd/hub", webdriver.DesiredCapabilities.CHROME)

2) локальны запуск с win через webdriver.Chrome()

webdriver.Chrome()

3) удаленный запуск, предварительно запустив ChromeDriver v19..., затем подключение через webdriver.Remote(ip_win7:9515)

 

Python 2.7.3 (r265:79063, Apr 16 2012, 13:57:41) 
Type "help", "copyright", "credits" or "license" for more information.
>> from selenium import webdriver
>> driver = webdriver.Remote('http://192.168.121.109:9515', {})
>> driver.get('http://www.google.com')

Меня интересует:

1) взаимодействие с браузером(нативный интерфейс, или метод selenium1, или как)

2) скорость выполнения тестов

3) эффективность

4) еще что-нибудь о чем я не знаю

5) вдобавок поясните плз, почему при запуске сервера с параметром -FirefoxProfileTemplate, селениум запускает мозилу без этого параметра, по факту он просто не работает, прововал на линуксе и на винде

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

 


(Mykhailo Poliarush) #2

вопросы скорорости и эффективности, для этого нужно какой-то эталон, с чем сравнивать
также немаловажным фактом является конфигурация и окружение
потому, в вопросе мало конкретики, чтобы ответить внятно

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

на счет хрома и вызова его с remotewebriver
если мы посмотрим внутри исходников, то увидим следующее

class WebDriver(RemoteWebDriver):
...
            RemoteWebDriver.__init__(self,
                command_executor=self.service.service_url,
                desired_capabilities=desired_capabilities

потому, разницы между вызовами хромдрайвера и ремоутдрайвера недолжно особо быть.
конечно, selenium не идеален, потому могут быть конфигурационные проблемы и баги в коде.


(Mykhailo Poliarush) #3

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