0

factory boy を使用していくつかのモデル (django ではない) をテストしていますが、別の factory の複数のインスタンスを含むリストを含むフィールドを表示するにはどうすればよいか疑問に思っていました。たとえば、クラスUserおよびGroupがあるとします。

class User:
  name = StringType(required=True)

class Group:
  name = StringType(required=True)
  user = ModelType(User)

そのようなユーザーが属するすべてのグループを含むUserファクトリ内にgroupsと呼ばれるフィールドを表示したいと思います。ファクトリの実行時に、デフォルトで 2 つのグループ [' group1 ', ' group2 '] を表示します。

class UserFactory:
    name = factory.Faker('first_name')
    groups = factory.RelatedFactory(GroupFactory, 'user')

    class Meta:
        model = User


class GroupFactory:
    name = factory.Faker('word')
    user = factory.SubFactory(UserFactory)

    class Meta:
        model = Group

上記の関連ファクトリを使用してみましたが、関連フィールドのデフォルト値を定義する方法がわかりません。この問題に光を当てることができるファクトリーボーイの第一人者はいますか?

4

1 に答える 1