首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rspec测试在Namespace中失败

Rspec测试在Namespace中失败
EN

Stack Overflow用户
提问于 2010-12-20 20:29:50
回答 5查看 5.4K关注 0票数 1

我刚刚将一些现有的rails测试转换为rspec,现在名称空间中的测试失败了。

例如,在下面的示例中,AccountController规范通过,而ChildrenController失败时出现以下错误:

代码语言:javascript
复制
in `load_missing_constant': Expected /.../app/controllers/admin/children_controller.rb to define Admin::ChildrenController (LoadError)

app/控制器/帐户控制器.app

代码语言:javascript
复制
class AccountController < ApplicationController

规范/控制器/帐户控制器_spec.rb

代码语言:javascript
复制
require 'spec_helper'

describe AccountController do
  #...
end

app/控制器/admin/admin_app

代码语言:javascript
复制
class Admin::ChildrenController < ApplicationController

spec/controllers/admin/children_controller_spec.rb

代码语言:javascript
复制
require 'spec_helper'

describe Admin::ChildrenController do  
   include ::ControllerHelper 
   #... 
end

我在用

  • ruby-1.9.2-p0
  • Rails 3.0.3
  • rspec 2.3.0

我试过使用命名空间定义,但到目前为止还没有结果-有什么想法吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-12-21 10:48:37

张贴答案,以防任何人在这方面的另一次绊倒!

最后,我通过将规范扁平化来修正它,如下所示:

代码语言:javascript
复制
app>controllers>admin>children_controller.rb
class Admin::ChildrenController < ApplicationController

spec>controllers>children_controller_spec.rb
require 'spec_helper'
describe Admin::ChildrenController do  
票数 1
EN

Stack Overflow用户

发布于 2012-06-19 12:24:11

另一种解决办法是:

通过将类定义为字符串,它将正常加载:

代码语言:javascript
复制
# children_controller_spec.rb
require 'spec_helper'
describe "Admin::ChildrenController" do  
  # -something-
end

这将在spec/controller/admin目录中工作。

编辑:在2.10.x中不工作

票数 4
EN

Stack Overflow用户

发布于 2012-06-22 14:01:39

我也有同样的问题,不愿意将测试放在较低的目录中。就我而言,是斯波克把事情搞砸了。

准确地说:

代码语言:javascript
复制
Spork.each_run do
  ActiveSupport::Dependencies.clear
end

我放置了一个检查程序,如果正在运行,否则您应该忽略这一行。

代码语言:javascript
复制
Spork.each_run do
  if /spork/i =~ $0 || RSpec.configuration.drb?
    ActiveSupport::Dependencies.clear
  end
end
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4493632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档