首页 文章

在实际设备上使用selenium webdriver自动执行iOS测试

提问于
浏览
2

我下载了iwebDriver项目并将其安装在ipad中 . 服务器从“http://10.10.10.55:3001/wd/hub”开始 . 我想点击“www.google.com”,但我收到了错误 . 我正在粘贴下面的代码和堆栈跟踪 .

注意:它在iOS模拟器上完美运行但在ipad上失败 . 我的iPad版本为4.3.3,XCode版本为4.2,iOS SDK为5.1

require 'selenium-webdriver'

browser = Selenium::WebDriver.for :remote, :url => "http://10.10.10.55:3001/wd/hub", :desired_capabilities => "ipad"
browser.get "http://www.google.com"

我收到错误: -

URI :: InvalidURIError:方案http不接受来自/Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby的注册表部分:(null):( null)(或错误的主机名?) /1.9.1/uri/generic.rb:199:in initialize'from /Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/uri/http.rb:78 :inUitialize'from /Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/uri/common.rb:177:in new'from /Users/rohit/.rvm/ rubies / ruby-1.9.2-p290 / lib / ruby / 1.9.1 / uri / common.rb:177:inparse'来自/Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby /1.9.1/uri/common.rb:628:in parse'来自/Users/rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium /webdriver/remote/http/default.rb:57:inrequest'来自/Users/rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/ webdriver / remote / http / common.rb:40:来自/Users/rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/ webdriver / remote / bridge.rb:598:inraw_execute'来自/ User s /rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver/remote/bridge.rb:92:in create_session'from / Users / rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver/remote/bridge.rb:68:ininitialize'from / Users / rohit / . rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver/common/driver.rb:33:in new'from /Users/rohit/.rvm/ gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver/common/driver.rb:33:infor'from /Users/rohit/.rvm/gems/ruby -1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver.rb:65:in for'from(irb):5 from /Users/rohit/.rvm/rubies/ruby -1.9.2-P290 / bin中/ IRB:16:在

当我使用“https”时,我看到以下情况 -

browser = Selenium::WebDriver.for :remote, :url => "https://10.10.10.55:3001/wd/hub", :desired_capabilities => "ipad"

OpenSSL :: SSL :: SSLError:SSL_connect SYSCALL返回= 5 errno = 0 state = SSLv2 / v3从/Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9读取服务器hello A. .1 / net / http.rb:678:在connect'from /Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:678:inblock从/Users/rohit/.rvm/rubies/连接'from /Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/timeout.rb:44:in timeout' ruby-1.9.2-p290 / lib / ruby / 1.9.1 / timeout.rb:89:intimeout'from /Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1 /net/http.rb:678:in连接'from /Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:637:indo_start'from /Users/rohit/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/net/http.rb:626:in start from from /Users/rohit/.rvm/rubies/ruby- 1.9.2-p290 / lib / ruby / 1.9.1 / net / http.rb:1168:inrequest'来自/Users/rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium-webdriver -2.22.2 / lib / selenium / webdriver / remote / http / default.rb:76:在/Users/rohit/.rvm/gems/ruby-1的response_for'中.9.2-p290 @ playerTests / gems / selenium-webdriver-2.22.2 / lib / selenium / webdriver / remote / http / default.rb:38:inrequest'from /Users/rohit/.rvm/gems/ruby-1.9 . 2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver/remote/http/common.rb:40:来自/Users/rohit/.rvm/gems/ruby-1.9的电话' . 2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver/remote/bridge.rb:598:来自/Users/rohit/.rvm/gems/ruby-1.9.2-p290的inraw_execute' @ playerTests / gems / selenium-webdriver-2.22.2 / lib / selenium / webdriver / remote / bridge.rb:92:in create_session'from /Users/rohit/.rvm/gems/ruby-1.9.2-p290@playerTests /gems/selenium-webdriver-2.22.2/lib/selenium/webdriver/remote/bridge.rb:68:ininitialize'来自/Users/rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/ selenium-webdriver-2.22.2 / lib / selenium / webdriver / common / driver.rb:33:in new'from /Users/rohit/.rvm/gems/ruby-1.9.2-p290@playerTests/gems/selenium- webdriver-2.22.2 / lib / selenium / webdriver / common / driver.rb:33:infor'from /Users/rohit/.rvm/gems/r uby-1.9.2-p290@playerTests/gems/selenium-webdriver-2.22.2/lib/selenium/webdriver.rb:65:in for from(irb):6 from /Users/rohit/.rvm/rubies/ ruby-1.9.2-p290 / bin / irb:16:in'1.9.2p290:007>

请建议,我做错了什么?

1 回答

  • 2

    Why selenium-webdriver was not working on ipad :-

    • 我的ipad2版本是4.3.3,我在同一个ipad2上安装了iWebDriver项目 .

    • 试图运行简单的ruby代码,写有问题 .

    • 代码出错,堆栈跟踪也粘贴了问题 .

    How selenium-webdriver started working on ipad :-

    • 我在'New ipad' ios版本5.1上安装了iWebdriver项目 . 它也适用于版本为5.0的iphone 4S

    • 然后运行简单的ruby代码

    ruby'selenium-webdriver'driver = Selenium :: WebDriver.for:remote,:url =>“http://10.10.10.88:3001/wd/hub”,:desired_capabilities =>:ipad

    • desired_capabilities没关系,你可以给任何东西:iphone或:ipad

    • 以上ruby代码将对象退回给我,我可以这样做: -

    driver.get“http://www.google.com”

    • 它有效 .

    • 我观察到,selenium-webdriver有iOS版本的依赖关系 .

    所以,问题是为什么selenium-webdriver不能在低于5.0的iOS版本上工作,如4.3.3,4.3.1等 .

    谢谢所有帮助过我的人 .

相关问题