我想设置使用硒和硒客户端宝石测试的环境。 我更喜欢单元测试风格超过RSpec风格的测试。硒红宝石报告
我必须建立自己的报告系统吗?
如何在每次测试中添加异常处理而不必开始救援结束?有没有办法使用mixins来做到这一点?
我想设置使用硒和硒客户端宝石测试的环境。 我更喜欢单元测试风格超过RSpec风格的测试。硒红宝石报告
我必须建立自己的报告系统吗?
如何在每次测试中添加异常处理而不必开始救援结束?有没有办法使用mixins来做到这一点?
我不确定我是否理解您的问题在报告方面意味着什么,但硒客户端宝石处理BDD和UnitTesting。
下面是代码从RubyForge的页面复制:
require "test/unit"
require "rubygems"
gem "selenium-client", ">=1.2.16"
require "selenium/client"
class ExampleTest < Test::Unit::TestCase
attr_reader :browser
def setup
@browser = Selenium::Client::Driver.new \
:host => "localhost",
:port => 4444,
:browser => "*firefox",
:url => "http://www.google.com",
:timeout_in_second => 60
browser.start_new_browser_session
end
def teardown
browser.close_current_browser_session
end
def test_page_search
browser.open "/"
assert_equal "Google", browser.title
browser.type "q", "Selenium seleniumhq"
browser.click "btnG", :wait_for => :page
assert_equal "Selenium seleniumhq - Google Search", browser.title
assert_equal "Selenium seleniumhq", browser.field("q")
assert browser.text?("seleniumhq.org")
assert browser.element?("link=Cached")
end
end
至于异常处理,单元测试与处理错误消息的异常。
这就是说,我可能误解了你的问题。
Extent的初始构建适用于Ruby。您可以查看示例here。最新消息来源于github。
示例代码:
# main extent instance
extent = RelevantCodes::ExtentReports.new('extent_ruby.html')
# extent-test
extent_test = extent.start_test('First', 'description string')
# logs
extent_test.log(:pass, 'step', 'details')
extent.end_test(extent_test)
# flush to write everything to html file
extent.flush
好,因为汇报,我想硒样报告(见这里:http://labs.fusionlink.com/katapult/images/Image/cfeclipse/pic21.jpg ) 但是,如果使用selenium-client gem是不可能的,我想创建自己的,我也想用一些东西来扩展它(例如包含错误的页面的屏幕截图)。 为了做到这一点,我必须抓住例外。我可以用“救援”来做到这一点,但那意味着我的每个测试都应该有开始 - 救援结束声明,这很烦人。有没有另外一种方法呢? – zorglub76 2009-07-06 14:56:24