#やりたいこと
specコードにてfactorybotで、モデル(クラス)は存在しないがテーブルが存在するオブジェクトのレコードをcreateしたいです。
例えば、
rails
1let!(:hoge) {create(:hoge)}
としますが、app/models以下にhogeクラスはありません。しかし、schema.rbにはhogesテーブルが存在します。
ドキュメント(https://github.com/thoughtbot/factory_bot/blob/master/GETTING_STARTED.md#defining-factories)を読むとfactorybotは下記のようにFactory.defineした時に、クラス名を推測するらしいので、クラスが定義されていないといけないのかと思っています。
FactoryBot.define do factory :hoge #some code end end
しかし、テストのために必要ないクラスをわざわざ定義するのは悪手なような気がしております。
#試したこと
https://qiita.com/tanutanu/items/0eb900580dcf6d2b2a12
このやり方を試してみましたが、DBとクラスが紐付けられないため、saveをすると怒られてしまいます。
自分としてはhogeをcreateしたいのでこの方法では条件を満たせません。
質問
factorybotでモデル(クラス)が存在しないがテーブルがあるオブジェクトをcreateする方法が知りたいです。
何卒よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。