【问题标题】:How to test devise models, controllers and views using RSpec?如何使用 RSpec 测试设计模型、控制器和视图?
【发布时间】:2010-08-26 00:03:10
【问题描述】:

我习惯于使用 rspec_X 语法生成我的 rspec 控制器和模型,例如

script/generate rspec_model Person
script/generate rspec_controller Person

但是,如果我想使用 devise 创建 Person 模型,语法是:

script/generate devise Person

工作正常,但不会创建任何 rspec 测试文件/目录。

有没有可以用来生成两者的命令?

(Ruby 1.8,Rails 2.3)

谢谢!

【问题讨论】:

    标签: ruby-on-rails testing devise


    【解决方案1】:

    这些模型和控制器在 Devise 内部进行了测试,因此您不应该自己重复这些工作。如果您想测试用户是否可以登录、注销、注册和找回密码,我建议您使用 Cucumber 编写测试来测试 Devise 与您的应用程序的集成。

    【讨论】:

      【解决方案2】:

      我习惯于使用 rspec_X 语法生成我的 rspec 控制器和模型

      如果您想创建 rspec 结构,您仍然可以使用它,但您可能希望拒绝覆盖您的模型。例如,这是我的rspec_model 输出:

      $ script/generate rspec_model Person
            exists  app/models/
            create  spec/models/
            create  spec/fixtures/
      overwrite app/models/person.rb? (enter "h" for help) [Ynaqdh] n
              skip  app/models/person.rb
            create  spec/models/person_spec.rb
            create  spec/fixtures/people.yml
            exists  db/migrate
            create  db/migrate/20100826043436_create_people.rb
      

      我只是告诉它不要覆盖app/models/person.rb

      【讨论】:

        猜你喜欢
        • 2015-11-28
        • 2017-10-04
        • 1970-01-01
        • 2013-01-03
        • 1970-01-01
        • 1970-01-01
        • 2013-08-04
        • 2015-12-22
        • 1970-01-01
        相关资源
        最近更新 更多