【问题标题】:Where to put test class for "normal" Ruby classes in Rails?在 Rails 中将“普通”Ruby 类的测试类放在哪里?
【发布时间】:2015-06-14 21:31:12
【问题描述】:

我在lib目录下创建了一个模块(好像是你放的地方)。它有一种方法对我的许多模型类都很有用。

我想对其进行单元测试。但是,当我尝试在 testmodel 文件夹中进行测试时,它失败了:

Minitest::UnexpectedError: NoMethodError: undefined method `type' for nil:NilClass

所以这可能是错误的。测试应该在哪里,它应该继承什么等才能工作?

【问题讨论】:

    标签: ruby-on-rails ruby unit-testing testing


    【解决方案1】:

    您的测试几乎总是遵循相同的文件夹结构。所以如果你有:

    app
    ├── controllers
    ├── models
    

    您的测试目录将是:

    spec
    ├── controllers
    │   └── some_controller_spec.rb
    ├── models
    │   ├── some_model_spec.rb
    ├── rails_helper.rb
    └── spec_helper.rb
    

    在您的实例中,如果您有一个 lib 文件夹,您只需将一个 lib 文件夹添加到您的 spec/test 目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-21
      • 1970-01-01
      • 1970-01-01
      • 2015-03-02
      • 2011-08-05
      • 2015-10-19
      • 1970-01-01
      相关资源
      最近更新 更多