问题标签 [rspec2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - rails 3 教程:rspec + factory_girl_rails 问题
我一直在关注 Rails 教程(http://railstutorial.org/chapters/beginning,Rails 3 版本),当使用 Factory Girl 和 Rspec 时,我已经停在第 11 章,我有一个没有通过的测试我觉得我做错了什么,但我不明白是什么。
首先,Github 上有一个 git 存储库,其中包含未通过该测试的代码。
http://github.com/Monomachus/ch3_static_pages
所以我得到了用户模型
我有微博模型
然后我得到了工厂女孩设置
最后是 Rspec 代码
我得到了一个错误,它肯定告诉我我做错了什么。
如您所见,即使 user_id 属性设置不正确+
显然@user.microposts 没有任何元素。
请帮我解决这个问题谢谢。
ruby - Rails / RSpec:如何测试#initialize方法?
如何#initialize
使用 RSpec 指定行为?例如这里:
生成器.rb
generator_spec.rb
我想设定pick_seed
从方法调用的#initialize
方法的期望。
cucumber - Rails 集成测试
我正在为已经构建的 Rails 3 应用程序设置一堆集成测试。该应用程序是使用 Rails 3 和 Ruby 1.9.2 构建的。我已经看到有关 Capybara、Cucumber 和 RSpec 2 的建议,但我不确定它们各自的优势是什么。
我还注意到它们似乎紧密相连。我看到的帖子似乎总是在谈论将 Capybara 与 Cucumber 一起使用,或者将 Rspec 与 Cucumber 一起使用。
他们每个人的优点/缺点是什么?是否有某些组合最适合一起使用?
cucumber - 为什么 RCov 排除视图并包含评论?
我正在使用 Rails 3、RSpec 2 和 rcov gem。我正在使用以下 rake 任务在我的规格上运行 rcov:
首先,视图规格不包含在结果中。如何查看 rcov 结果中视图的代码覆盖率?其次,模型的代码覆盖率很低。当我查看详细信息时,这是因为注释行被突出显示为未执行。我怎样才能解决这个问题?最后,似乎大多数(如果不是全部)方法定义都被标记为未执行。有没有办法纠正这个问题?谢谢,达林
ruby - Rcov 的 Rspec2 问题
在我的 Rakefile 中,我有一个这样定义的任务:
运行 test:coverage 时,我得到以下信息:
在我的宝石列表下方:
任何的想法?提前致谢。
ruby-on-rails-3 - 如何使用 rspec 2 配置集成测试?
我需要为我的单元测试设置不同的设置,为我的集成测试设置不同的设置。例子
对于单元测试,我想做
对于集成测试,我想做
另外,在开始集成测试之前,我想确保 solr 已启动。因此我希望能够打电话
但是,仅用于集成测试。如果它是一个单元测试,我不想启动我的 solr。
如何保持它们的配置分开?现在,我通过将集成测试保存在 spec 文件夹之外的文件夹中解决了这个问题,该文件夹有自己的 spec_helper。有没有更好的办法?
ruby-on-rails - Rspec - 在私有方法中模拟对象
在我们的应用程序中,我们为一些感兴趣的领域模型编写了 after_create/update/delete 回调。在这些模型中,我们创建了一个新的审计模型,它将更改模型的必要数据 xml 化,并将其存储在审计表中。例如,Consultant 模型的 after_create 回调如下所示:
def after_create
xml = #private xmlize() is called which returns the data of new Consultant object
audit = Audit.new :data=>xml.to_s
audit.save
end
现在,我想模拟审计对象,看看是否使用 RSpec 调用了它的保存方法。或者更好的是,如果有办法通过 RSpec 正则表达式 xml 的内容,我会很高兴学习如何在 Rails 环境中通过 Ruby 来做到这一点。
ruby-on-rails - Rails 控制器测试中的“get”方法为模块范围内的控制器抛出“无路由匹配”
对于我的范围路由,我似乎无法解决我的 rspec 控制器规范中的“get”方法。
我正在为我的“访问者”控制器确定路由范围,以便它们位于“访问者”模块命名空间内,但位于路由的根目录。所以'mysite.com/foo' 转到Visitor::FooController。
配置/路由.rb
规格/控制器/访问者/inquiries_controller_spec.rb
应用程序/控制器/访问者/inquiries_controller.rb
当我运行规范时,我收到以下错误。
我尝试为 get 添加一些额外的参数(例如:url => 'inquiries/new'、:controller => 'inquiries'),但我似乎无法解决这个问题。用我的浏览器点击“查询/新”可以正常工作,并表明我的路线按预期工作。
我是 rspec 的新手,所以这里可能存在一些我不理解的基本问题。否则,我正在寻找一种方法来解决这个问题,以便我可以测试这些“访客”控制器。任何帮助表示赞赏!
rspec2 - Rspec 存根查找器找到一个可枚举而不是单个对象
我刚刚开始使用 rspec 2,并且我认为在我的一个方法存根中的某个地方遇到了麻烦。我正在尝试从我的 clients_controller.rb 测试“显示”操作,但它失败了,返回一个 Enumerable::Enumerator 而不是一个对象。“索引”操作工作正常。我的目标是确保当前登录的用户可以查看他或她的客户,但不能查看任何其他用户的客户。
和:
stub_current_user 在 spec_helpers.rb 中:
'index' 动作的测试通过了,但 'show' 动作的两个测试都失败了,出现以下错误:
我不确定我在模拟、测试本身或其他地方是否出错了。
ruby-on-rails - Autotest 和 Factory Girl 的验证问题
我对自动测试有疑问。在我的用户模型中,用户名和电子邮件地址是唯一的。当我开始自动测试时,一切正常。在第二轮,从自动测试开始,我有一个
验证失败:电子邮件已被占用,用户名已被占用
只有两次测试出错。我不明白为什么,我使用带有 sequenze 的 factorygirl,这应该每次生成一个新的用户名。
这是我的 rspec2 文件:
工厂:
唯一两个不起作用的测试是在“唯一值”上下文中。所有其他测试都没有错误。
谢谢