Factory_Girlが一意のレコードを生成していません

ジェフリー・アラン・リー

Factory_Girl_Railsでフィクスチャの代わりにファクトリを使用するようにアプリケーションを変換しています。次のファクトリを定義しています。

factory :requirement do
  sequence(:reqTitle) {|t| "Test Requirement #{t}"}
  ignore do
    categoryName " "
    categoryAbbr " "
 end

  reqText "This is a test general requirement for the purpose of, um, testing things"
  status "Approved"
  factory :reqWithCat do
    category
  end
  factory :reqWithNamedCat do
    category {create(:category, catName: categoryName, catAbbr: categoryAbbr)}
  end
  factory :reqFromUserRequirement do
    user_requirement
  end
end

次に、セットアップセクションで、次のスニペットを実行します。

(0..5).each do |x|
      requirement = create(:reqWithCat)
      requirement.ind_requirements {|ir| [create(:ind_requirements)]}
end
(0..5).each do |x|
    create(:reqWithNamedCat, categoryName: "User Interface", categoryAbbr: "UI")
end

ただし、レコードが作成されていないために、テストが失敗しているようです(たとえば、要件コントローラーのインデックステストでは、10個あるはずのレコードが0個返されていることがわかります)。デバッグモードでテストを実行すると、作成されたすべての要件がまったく同じID値を持っていることがわかりました。また、各レコードのシーケンス値は同じです。

重複したレコードの保存に失敗していると思います。そのため、0が返されます。しかし、間違って設定したものがわかりません。ここで何が欠けていますか?

ジェフリー・アラン・リー

関連する多数を適切に作成するようにユーザーファクトリを修正すると、モデルでスコープを定義する方法に基づいて、このファクトリを誤って記述したことがわかりました。それが修正されると、「壊れた」テストが機能し始めました。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Javascriptの一意の乱数ジェネレーターが一意の番号を生成していません

分類Dev

uuidを使用した一意のトークンが同じコードを生成しています

分類Dev

コンパレータを使用してConcurrentSkipListSetのは、新しい一意の値を追加しません

分類Dev

一意の乱数の2列に5000レコードを生成します

分類Dev

否定レコードがないテーブル内の一意のレコードを検索しようとしています

分類Dev

angleJsの一意のフィルター-一意の配列の長さを取得していません

分類Dev

Railsが新しいレコードに一意のIDを割り当てていない

分類Dev

新しいレコードと既存のレコードの一意のIDを生成する

分類Dev

MySQL-特定の値を含まないすべての一意のレコードを選択します

分類Dev

NSDictionary-一意である必要があるキーを選択して一意のレコードを取得します

分類Dev

特定の列に基づいてCSVで一意のレコードを識別します

分類Dev

一意のデータフレームを使用していますが、行は「1D配列のような」リストではありません

分類Dev

mysqlから一意のレコードを取得します

分類Dev

最大double値に基づいてRDD [String、String、Double]で一意のレコードを検索します

分類Dev

自動生成された一意のキーを使用してFirebaseから子レコードを取得する

分類Dev

2つの一意のレコードのセットを比較し、欠落しているレコードのIDを取得します

分類Dev

毎年一意のレコードを作成し、値ごとに個別のレコードを作成する方法(重複ではありません)

分類Dev

N未満の一意の番号の固定シーケンスをエンコードして生成します

分類Dev

複数の一意でない列にまたがる一意のレコード

分類Dev

SQL Serverの一意の日付に基づいてレコードを選択し、その日付のレコード数をカウントします

分類Dev

このコードはどのようにして一意の文字を26回生成しますか?

分類Dev

重複するレコードを削除するにはどうすればよいですか(これはトリッキーなケースです。行は本質的に一意ではありませんが、その内容は一意です)

分類Dev

レコードのコピーを作成してデータベースに保存しますが、一意のIDを使用します

分類Dev

スコープを使用してレコードの一意性を検証します。ネストされたレコードを保存するときに正しく機能しません

分類Dev

MySQL-列がNULLの場合、ランダムな一意のコードを生成します

分類Dev

すべてのアナグラムに同じ一意のハッシュコードを生成します

分類Dev

レコードを一意のIDに基づいて異なる値を持つ2つのレコードに分割します

分類Dev

Angular2選択矢印divに対して一意のコンポーネント識別子が生成されません

分類Dev

factory_girlをリロードせずにRSpecテストが失敗する

Related 関連記事

  1. 1

    Javascriptの一意の乱数ジェネレーターが一意の番号を生成していません

  2. 2

    uuidを使用した一意のトークンが同じコードを生成しています

  3. 3

    コンパレータを使用してConcurrentSkipListSetのは、新しい一意の値を追加しません

  4. 4

    一意の乱数の2列に5000レコードを生成します

  5. 5

    否定レコードがないテーブル内の一意のレコードを検索しようとしています

  6. 6

    angleJsの一意のフィルター-一意の配列の長さを取得していません

  7. 7

    Railsが新しいレコードに一意のIDを割り当てていない

  8. 8

    新しいレコードと既存のレコードの一意のIDを生成する

  9. 9

    MySQL-特定の値を含まないすべての一意のレコードを選択します

  10. 10

    NSDictionary-一意である必要があるキーを選択して一意のレコードを取得します

  11. 11

    特定の列に基づいてCSVで一意のレコードを識別します

  12. 12

    一意のデータフレームを使用していますが、行は「1D配列のような」リストではありません

  13. 13

    mysqlから一意のレコードを取得します

  14. 14

    最大double値に基づいてRDD [String、String、Double]で一意のレコードを検索します

  15. 15

    自動生成された一意のキーを使用してFirebaseから子レコードを取得する

  16. 16

    2つの一意のレコードのセットを比較し、欠落しているレコードのIDを取得します

  17. 17

    毎年一意のレコードを作成し、値ごとに個別のレコードを作成する方法(重複ではありません)

  18. 18

    N未満の一意の番号の固定シーケンスをエンコードして生成します

  19. 19

    複数の一意でない列にまたがる一意のレコード

  20. 20

    SQL Serverの一意の日付に基づいてレコードを選択し、その日付のレコード数をカウントします

  21. 21

    このコードはどのようにして一意の文字を26回生成しますか?

  22. 22

    重複するレコードを削除するにはどうすればよいですか(これはトリッキーなケースです。行は本質的に一意ではありませんが、その内容は一意です)

  23. 23

    レコードのコピーを作成してデータベースに保存しますが、一意のIDを使用します

  24. 24

    スコープを使用してレコードの一意性を検証します。ネストされたレコードを保存するときに正しく機能しません

  25. 25

    MySQL-列がNULLの場合、ランダムな一意のコードを生成します

  26. 26

    すべてのアナグラムに同じ一意のハッシュコードを生成します

  27. 27

    レコードを一意のIDに基づいて異なる値を持つ2つのレコードに分割します

  28. 28

    Angular2選択矢印divに対して一意のコンポーネント識別子が生成されません

  29. 29

    factory_girlをリロードせずにRSpecテストが失敗する

ホットタグ

アーカイブ