大佬教程收集整理的这篇文章主要介绍了ruby-on-rails – 如果只更改注册视图,是否需要自定义Devise控制器?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
visit new_member_registration_path fill_in('Name:',:with => 'Rob Doe' ) fill_in('member_email',:with => 'rob@smith.com' ) fill_in('member_email_confirmation',:with => 'rob@smith.com' ) fill_in('member_password',:with => 'secret') fill_in('Company or Venue Name:',:with => 'Rob Inc.') fill_in('Contact number:',:with => '040544404440') click_button('Sign up') save_and_open_page
由于某种原因,’email’和’password’数据没有传递给DeviseRegistrations控制器(查看测试日志时它是空白的),因此导致验证失败.但是直到save_and_open_page没有rspec错误(因此正在填写这些字段).
我错过了什么?我是否需要继承DeviseRegistrations控制器?
测试Rails 3.0.7,机架测试0.5.7和rails 3.1rc1和机架测试0.6.0
# test.rb visit new_member_registration_path fill_in('Name:',:with => 'Rob Doe' ) debugger
终端将停止您的脚本并等待您做某事.
# Terminal /file/path/to/you/test.rb:12 fill_in('Name:',:with => 'Rob Doe' ) (rdb:1)
在这里打开一个IRB会话:
(rdb:1) irb
你可以在这里做任何RSpec或Capybara方法:
>> current_path.should == 'foo/bar'
尝试提交表单:
>> click_button "Sign Up" >> save_and_open_page
查看Devise在结果页面上给您的错误消息.使用Rack驱动程序,您将看不到填写的字段.在这种情况下,您可能想尝试使用SELEnium驱动程序
# test.rb Capybara.default_driver = :SELEnium visit new_member_registration_path
但是,您无法使用SELEnium驱动程序从IRB驱动Capybara.但是,您将能够看到SELEnium将哪些表单值放入您的表单中.由于SELEnium会很快发生事情,您可以使用调试器暂停测试,同时检查SELEnium在浏览器中打开的页面.
以上是大佬教程为你收集整理的ruby-on-rails – 如果只更改注册视图,是否需要自定义Devise控制器?全部内容,希望文章能够帮你解决ruby-on-rails – 如果只更改注册视图,是否需要自定义Devise控制器?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。