【问题标题】:FactoryGirl with Rspec to create a dictionaryFactoryGirl 用 Rspec 创建字典
【发布时间】:2012-06-18 20:12:48
【问题描述】:

我正在进行 Ruby on Rails rspec 测试,我有一个问题。显然,我必须创建一个字典,类似于

@example = {:attr1 => "somevalue", :attr2 => "some", 
            :attr3 => "someother", :stt => "abc"}

这是一本很长的字典,所以我想在工厂里制作。这将使测试看起来更好。

我一直在环顾四周,但我只看到 FactoryGirl 是为 ActiveRecord 对象设计的。有谁知道如何使用 FactoryGirl 制作这样的字典?

感谢您的帮助。

【问题讨论】:

  • 为什么是 FactoryGirl 而不是返回该哈希的简单助手?
  • 我认为使用 factorygirl 将帮助我运行测试,而对其他代码的更改最少。

标签: ruby-on-rails ruby testing rspec factory-bot


【解决方案1】:

事实上,您可以为此使用 FactoryGirl:

Custom Construction。基本上,您向工厂定义提供 initialize_with 并使用您的初始化函数将字典值设置为您需要的值。您仍然可以获得序列、特征等的全部功能,但可以取回 任何 Ruby 对象...而不仅仅是 ActiveRecord。

【讨论】:

    【解决方案2】:

    所以,直接来自Getting Started page

    该名称默认用于猜测对象的类,但可以显式指定它...如果您正在创建 ActiveRecord 对象,这意味着...

    这表明您可以将任何类指定为工厂正在创建的类,其中应包括字典。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多