shoulda相关内容
之前已经问过一个几乎相同的问题(如何使用 shoulda 匹配器来测试多态关联?)但是有没有明确的答案对我有帮助,所以我再试一次. 我正在使用 shoulda 来测试我的关联,但以下测试失败 需要'spec_helper'描述分娩硬膜外做{@treatment = FactoryGirl.build :treatment} 之前主题{@治疗}它{应该有_许多:并发症}结尾 失败并显示以下
..
在 Rails Test Prescriptions(b10.0,第 176 页)一书中,有如下单行断言示例: 应该“成功"{ assert_response :success } 这对我来说似乎不是有效的 ruby 语法,并且 ruby 报告左大括号是意外的.为了解析它,我必须把它改成 应该“成功";做 assert_response : 成功结束 第一个例子的语
..
我是 TDD 的新手.我发现 should gem 能够测试数据库实体的列是否存在,以及测试其索引的能力. 但是是否有必要在我的测试套件中包含对列和索引的测试? 我是否需要担心在开发过程中可能删除任何列和索引? 解决方案 不要测试数据库列;那只是测试实现.不要测试实现,测试行为.测试使用存储在这些列中的属性的功能.例外:如果您的架构有外部要求(这在我身上从未发生过,但我可以想象
..
我在我从事的一个项目中结合使用了 Shoulda 和 Test::Unit.我遇到的问题是我最近改变了这个: class MyModel 为此: class MyModel :更新结尾 以前,我的(通过)测试是这样的: class MyModelTest
..
当我想用 RSpec 测试属性是否/是否可访问时,我是这样做的 class Fooattr_accesible :something_else结尾描述 Foo 做it('作者不应该是可访问的') {lambda{describe_class.new(:author=>true)}.should raise_error ActiveModel::MassAssignmentSecurity::Er
..
使用 Test::Unit 和 Shoulda.尝试测试 Users.create.我的理解是 Rails 表单为这样的对象发送参数: 用户[电子邮件] 在您的操作中哪个会变成哈希,对吗? params[:user][:email] 好的,所以在我的测试中我已经尝试过... setup { post :create, :post =>{ '用户[电子邮件]' =>'无效@abc' } }
..
我正在设置一个 rails 应用程序,我刚刚完成了一些单元测试,我的朋友说,显然夹具不再酷,人们现在正在使用 RSpec 或 shoulda.我想知道使用这些其他工具包的实际好处是什么.任何信息都表示赞赏. -fREW 解决方案 RSpec 和类似框架是旨在帮助行为驱动开发的工具.它们不仅仅是编写测试的一种更漂亮的方式,尽管它们确实对此有所帮助. 这里有大量关于 BDD 的信息
..
背景:我在使用 Thoughtbot 的“工厂女孩" gem 时遇到了一些问题,它用于创建用于单元和其他测试的对象.我想转到控制台并运行不同的 Factory Girl 调用来检查发生了什么.例如,我想去那里做... >>工厂(:用户).检查 我知道你可以在不同的环境中运行控制台... $ 脚本/控制台 RAILS_ENV=test 但是当我这样做时,工厂类不可用.看起来 test
..
我的 ActiveRecord 中有以下验证. 验证 :active, :inclusion =>{:in =>['Y', 'N']} 我正在使用以下内容来测试我的模型验证. should_not allow_value('A').for(:active)应该 allow_value('Y').for(:active)应该 allow_value('N').for(:active) 是否
..
试图找到但没有成功.只是想知道如何在 Rails 3 中测试作用域. 可能使用 rspec、should 或只是一个测试单元. 谢谢. 其实我是这样试的,但是还不是完整的测试,因为还需要放order()方法. 范围: scope :recents_available, where(:available => true, :locked => false).order("c
..
我有以下测试.共有三个 it 块.与其他两个不同,第一个不使用 should. 如果我不将 before 块与 post :create, product: attrs 一起使用,那么第一个测试会按预期失败.但是如果我把 before 块放在那里,那么第一个测试失败,但其他两个通过.我对产品名称进行了唯一性验证,但这应该不是问题,因为我使用的是带有工厂的序列. 我该怎么办?当同时存在
..
在我的 rails 应用程序中,我有我的模型 Request、Service 和 ServiceRequest 在我的 models.rb 文件中: request.rb: 类请求 service.rb: 类服务 servicerequest.rb: class Servicerequest 以及导致问题的规范servicerequest_spec.rb: 需要“rai
..
目前,使用 rspec-rails (2.14.2),我使用 shoulda (3.5.0) gem 测试模型规范中的关联,如下所示: # app/models/user.rb类用户 经过一些研究,我在尝试使关联相关的断言起作用时遇到了困难(它们似乎都失败了). 错误信息: 1) 用户失败/错误:它 { is_expected.to own_to :school }无方法错误:#
..
我是单元测试领域的新手;我现在只使用了大约 2 个月的单元测试.当我在 Ruby 中进行单元测试时,我目前遵循 TDD 风格并使用 Test::Unit::TestCase.我还阅读了 RSpec 以及它如何遵循 BDD 方法.我也读过关于位于两个框架之间的 Shoulda.我的问题是,我应该将时间花在 RSpec 或 Shoulda 上,还是应该坚持使用 Test::Unit::TestCase
..
我知道您可以使用 Shoulda 轻松测试归属关系: describe Dog dog它{应该属于(:所有者)}结尾 是否可以使用 Shoulda 测试更复杂的belongs_to 关系?像这样: class Dog "人", :foreign_key =>“person_id"结尾 解决方案 您应该能够使用: 它{应该属于(:owner).class_name('Person') }
..
我正在尝试为渲染模板运行测试并遇到错误: 未定义的方法`key?'对于 1014:Fixnum 我的模型实例的存根在我的路由测试中正常工作,但在这里没有那么多.我做错了什么? describe RestaurantsController 所做的让(:餐厅){ FactoryGirl.build_stubbed(:餐厅)}描述 'GET #show' 做在 { 获取 :show, restau
..
我有 3 个模型,用户、游戏和玩家.用户和游戏之间基本上是多对多的关系,以玩家作为连接表,除了玩家有其他信息所以它有自己的模型. 玩家需要一个唯一的游戏 ID 和用户 ID 组合,所以我试图在玩家中说: validates_uniqueness_of :user_id, :scope =>:game_id 然后在我的规范中,我说(使用 shoulda 匹配器): 它{应该validat
..
我仍然很困惑it { should have(1).error_on(:base) } 之类的东西背后的魔法是什么,以及什么是特定的 Shoulda 匹配器. 我想确保 :base 包含错误消息“xxx",那么我该怎么做? 它“应该包含错误信息'xxx'"做联系方式有效吗?contact.errors[:base].should include('xxx')结尾 这是“要走的路",还是有
..
您好,我一直在寻找一种方法来测试模型关系并偶然发现应该是宝石 应该 (3.5.0) 应该-上下文 (1.2.1) shouda-matchers (2.8.0) 不幸的是,我试图用 rspec 测试一个简单的例子 describe Region do它“应该有一座城市"吗应该属于(:城市)结尾结尾 我总是收到一条消息 Region 应该有一个城市失败/错误:应该属于(:城市)
..
如何使用应该匹配器测试这个 ActiveRecord 关系? 模型 class User 测试 describe User do它 { 应该有_many(:articles) }结尾 我收到以下错误: 1) 用户应该有很多文章失败/错误:它 { 应该有_many(:articles) }预期用户具有称为文章的 has_many 关联(文章没有 user_id 外键.)# ./sp
..