论坛首页 编程语言技术论坛

rspec+selenium无缝结合的方案有没有?

浏览 2928 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-07-05  
rspec和selenium都很不错,有没有两方面结合的很无缝的东西?

1、单纯用selenium
open '/admin/users'
assert_text "All Users"
click "link=New User"
wait_for_text_present "Login Fields"
type "user[login]", "cvu"
submit

只有客户端测试

2、比较难看的结合
context "Test create user" do
  setup do
    @sel = Selenium::SeleneseInterpreter.new("localhost", 4444,
"*firefox", "http://localhost:3000", 5000)
    @sel.start
  end

  specify "should create a user when given valid user information" do
    @sel.open_and_wait "http://localhost:3000/admin/users"
    @sel.assert_text "All Users"
    @sel.click_and_wait "link=New User"
    @sel.type "user[login]", "cvu"
    @sel.submit
  end

  teardown do
    @sel.stop
  end
end

其实还是只有客户端测试。

3、我希望代码可以这样简单和直观:
context "Test create user" do
  specify "should create a user when given valid user information" do
    open '/admin/users'
    page.should have_text("All Users")
    click 'link=New User'
    fill {:users=>{:login=>'cvu', :firstname=>'Forrest', :lastname=>'Cao'}}
    submit
    response.should redirect_to('/admin/users')
    page.should have_text("cvu")
    User.find_by_login("cvu").should_not be_nil
  end
end

既可以通过selenium做浏览器里的测试(open '/admin/users'),又可以通过rspec看server端的反应(response.should redirect_to...),还可以访问测试数据库看里面的数据(User.find(1).should_not be_nil)。

不知道这样的东西目前有没有,很期待。
   发表时间:2007-07-05  
得把不同级别的测试分清吧,你这样岂不是把不同职责的测试弄混淆了?

我觉得利用Rails内置的model单元测试+Selenium集成测试足矣

有时间我也来做个Rails测试评估
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics