【发布时间】:2015-10-14 06:02:50
【问题描述】:
这是我目前正在做的事情:
def wait_for(timeout = 5)
Selenium::WebDriver::Wait.new(:timeout => timeout).until { yield }
rescue Selenium::WebDriver::Error::TimeOutError => e
puts 'Timeout Error'
rescue Selenium::WebDriver::Error::NoSuchElementError => ex
puts 'No Such Element Error'
end
两个问题:
1) 为什么它会显示两次超时错误?它应该只是超时并结束测试
2) 如何让它不在底部显示所有额外信息?理想情况下,我只想让它说“超时”或“没有这样的元素”,就是这样。**
我的日志吐出了所有这些:
已加载套件 C:/2oh/qt 开始
首次运行超时错误 Timeout Error E ==================================================== ==================================================== ==================================================== ====================================================错误:test_18a(测试):
Selenium::WebDriver::Error::NoSuchElementError: 没有这样的元素 (会话信息:chrome=43.0.2357.134) (驱动程序信息:chromedriver=2.15.322448 (52179c1b310fec1797c81ea9a20326839860b7d3),平台=Windows NT 6.1 SP1 x86_64) C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/response.rb:71:inassert_ok' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/response.rb:34:ininitialize' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/http/common.rb:78:innew' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/http/common.rb:78:increate_response' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/http/default.rb:90:inrequest' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/http/common.rb:59:incall' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/bridge.rb:657:inraw_execute' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/bridge.rb:635:in执行' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/remote/bridge.rb:603:infind_element_by' C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.46.2/lib/selenium/webdriver/common/search_context.rb:61:infind_element' C:/2oh/qttests.rb:28:intest_hdesrbf' C:/2oh/qt.rb:13:intest_18a' 10: 11:定义测试_18a 12:放置“第一次运行”=> 13:test_hdesrbf 14:结束
15:
16:
【问题讨论】:
标签: ruby selenium webdriver testunit