繁体   English   中英

如何测试与RSpec和Devise的集成

[英]How can I test integration with RSpec and Devise

使用RSpec测试我的rails应用程序的功能时,我遇到很多问题。 我有一个公司控制器,并且正在使用devise来确保您需要登录才能访问控制器。

然后,我将进行如下所示的集成测试:

describe "with valid information" do
            before do
                fill_in "company_address", with: "My special address"
                fill_in "company_name", with: "My User"
                fill_in "company_contact_email", with: "test@test.com"
                fill_in "company_contact_name", with: "Someone Hello"
            end

            it "should create a company" do
                expect { click_button submit }.to change(Company, :count).by(1)
            end     
        end

当然,它失败了,因为我没有登录的用户。我曾尝试创建一个如此处所述的测试助手,它对于控制器非常有效,但不适用于集成测试。

在进行这些测试之前,用Devise登录用户的最佳方法是什么?

将文件devise.rb添加到rspec/support ,这是内容

RSpec.configure do |config|
  config.include Devise::TestHelpers, :type => :controller
end

解决问题的另一种方法: 使用devise gem进行Rails集成测试

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM