如何在轨道上的红宝石单元测试
问题描述:
我想在轨道上的红宝石执行单元测试。我把我的文件放在test \ unit \ tab_test.rb中如何在轨道上的红宝石单元测试
我可以断言页面中的静态文本。 如:
browser.text_field(:name => 'userName').set("bhuvan")
assert(browser.text.include?("Contact US"))
我不知道该如何断言动态(根据病情一些文字被换页)。
任何人都可以帮助我断言页面中的动态文本。
答
好像你需要测试的用户界面(集成测试),正常情况下的单元测试是模型(检查应用程序逻辑)
如果我是正确的请检查水豚,黄瓜进行集成测试
http://techiferous.com/2010/04/using-capybara-in-rails-3/
http://www.allenwei.cn/cucumber-capybara-what-we-need-for-rails-integration-test/
答
在使用RSpec一般我单元测试并专注于模型和控制器的测试。这些事情的关键是总是将你正在测试的东西与其他东西与模拟和存根分离开来。
正如sameera207上面所说,我会用专门设计用于使用用户界面的东西来处理集成测试。他的水豚和黄瓜的例子是一个很好的开始。
我会记住的一个警告是,当您使用culerity/celerity对于JavaScript密集型应用程序非常不可靠时,我发现了黄瓜及其技术堆栈。我们每天都会在AT中遇到很多虚假的计时问题,这导致了很多分流。