代码之家  ›  专栏  ›  技术社区  ›  Jason

如何使用rspec测试设计模型、控制器和视图?

  •  1
  • Jason  · 技术社区  · 15 年前

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

    script/generate rspec_model Person
    script/generate rspec_controller Person
    

    但是,如果我想使用designe创建一个person模型,语法是:

    script/generate devise Person
    

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

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

    (Ruby 1.8,Rails 2.3)

    谢谢!

    2 回复  |  直到 15 年前
        1
  •  0
  •   Ryan Bigg Andrés Bonilla    15 年前

    这些模型和控制器都是内部测试来设计的,所以你不应该自己重复这些工作。如果您想测试用户是否可以登录、注销、注册和检索他们的密码,我建议您使用cucumber编写测试来测试devise与应用程序的集成。

        2
  •  0
  •   Kaleb Pederson    15 年前

    我习惯于使用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 .