mat*_*sko 12 javascript bdd ruby-on-rails konacha
在Rails中测试JavaScript视图的最佳方法是什么(测试页面是否适用于JavaScript?)
所以假设我有一个名为的页面/users/new,其中包含一个可以执行某些操作的表单.我想拥有它以便我提交表单,JavaScript测试工具会让我知道该页面是否中断.做这个的最好方式是什么?
我遇到了三个测试选项:
Konacha(迄今为止JS BDD的最佳工具)http://www.solitr.com/blog/2012/04/konacha-tutorial-javascript-testing-with-rails/
JasmineRice(Jasmine + Rails + Guard)https://github.com/bradphelan/jasminerice/
Capybara Webkit.https://github.com/thoughtbot/capybara-webkit
前两个基本上用于BDD和隔离测试.最后一个更适用于我正在寻找的内容,但我不想为JavaScript BDD和集成测试提供单独的测试设置.
有没有人有更好的解决方案?
检查github上的Teaspoon项目.
https://github.com/modeset/teaspoon
它支持Mocha,Jasmine和QUnit ..很好地支持使用PhantomJS(或Selenium Webdriver)无头地运行您的规范,并允许使用完整的Rails资产管道(coffeescript,fixture等).
此外,它受到我使用Rails的其他测试跑步者的经验的影响很大.
如果您正在使用RSpec,则可以在RSpec集成测试中使用Capybara:
spec/requests/my_spec.rb:
describe "my test", :js => true do
it "should do something" do
visit '/some/path'
click_on 'Submit'
page.should have_content 'Congratulations!'
end
end
Run Code Online (Sandbox Code Playgroud)
记得设置Capybara.javascript_driver = :webkit在spec_helper.rb.