【问题标题】:Selenium timeout when running Appium test on Sauce Labs在 Sauce Labs 上运行 Appium 测试时硒超时
【发布时间】:2015-03-19 06:20:15
【问题描述】:

我正在尝试使用 Sauce Labs 云服务在 Appium 上运行我的 ruby​​ 测试用例。以下是我的能力:

  caps = Selenium::WebDriver::Remote::Capabilities.iphone
  caps['browserName'] = 'Safari'
  caps['platformVersion'] = '7.1'
  caps['platformName'] = 'iOS'
  caps['deviceName'] = 'iPhone Simulator'
  caps[:name] = "iOS testing with Appium"
  caps[:autoAcceptAlerts] = true
  caps["tunnel-identifier"] = sauce_tunnel_name
  caps[:trustAllSSLCertificates] = true
  caps[:safariIgnoreFraudWarning] = true
  server_url = "http://#{ENV['SAUCE_USER']}:#{ENV['SAUCE_KEY']}@ondemand.saucelabs.com:80/wd/hub"

下面的命令给出了超时,因为 Sauce Labs 需要 60 多秒来创建 VM 并启动 Appium:

Watir::Browser.new(
      :remote,
      :url => server_url,
      :desired_capabilities => caps)

所以我必须找到一种改变超时的方法,我发现使用它:

    http_client = Selenium::WebDriver::Remote::Http::Persistent.new
    http_client.timeout = 300 #
    client = Selenium::WebDriver.for(:remote, :desired_capabilities => caps, :url => server_url, :http_client => http_client)
    Watir::Browser.new(client)

效果很好,但是当我尝试在我公司的网络中运行它时,我可以看到从 Sauce Labs 开始的测试,但在 iOS 模拟器准备好之前我收到以下错误:

Selenium::WebDriver::Error::WebDriverError: 
unexpected response, code=504, content-type="text/html" 
<HEAD><TITLE>Connection Timed Out</TITLE></HEAD> 
<BODY BGCOLOR="white" FGCOLOR="black"><H1>Connection Timed Out</H1><HR> 
<FONT FACE="Helvetica,Arial"><B> 
Description: Connection Timed Out</B></FONT> 
<HR> 
<!-- default "Connection Timed Out" response (504) --> 
</BODY> 

我已经联系了 Sauce Labs 的支持人员,但他们找不到解决方案。网络可能有什么问题?

【问题讨论】:

    标签: ruby http selenium-webdriver appium saucelabs


    【解决方案1】:

    听起来这是您公司网络的问题。 504 通常是由于连接中的代理之一超时。请参阅this 问题。

    【讨论】:

      猜你喜欢
      • 2014-11-09
      • 2016-09-12
      • 2014-01-19
      • 1970-01-01
      • 2014-03-01
      • 2015-12-12
      • 2021-09-23
      • 2021-12-05
      • 2016-10-23
      相关资源
      最近更新 更多