- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我有这个模型:
class FooContainerModel(object):
def __init__(self, foos):
self.foos = foos
我希望能够决定在创建时将创建多少个 foo,例如。
model = FooContainerFactory(count=15)
试过像这样的工厂
class FooContainerFactory(factory.Factory):
class Meta:
model = FooContainerModel
foos = factory.List([Foo() for _ in xrange(20)]) # fixed amount
foos = factory.lazy_attribute(lambda o: [Foo() for _ in xrange(20)]) # same
当然,我可以手动创建具有所需长度的 Foo() 列表并实例化 FooContainerModel,但这不是我想要的。有什么解决办法吗?
最佳答案
我不知道 FactoryBoy 是如何工作的,但是当我需要 Django 模型中字段的动态属性时,这种策略通常对我有用:
def FooContainerFactory(factory.Factory):
def __init__(self, count=20, *args, **kwargs):
self.foos = factory.List([Foo() for _ in range(20)])
super(FooContainerFactory, self).__init__(*args, **kwargs)
class Meta:
model = FooContainerModel
关于python - 如何使用 FactoryBoy 指定列表大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31741884/
我想将 FactoryBoy 与用户/配置文件模式一起使用,如其文档中所述。 class ProfileFactory(DjangoModelFactory): class Meta:
我正在开发一个 Django 项目,我已为其创建了以下工厂: class PurchaseFactory(factory.DjangoModelFactory): class Meta:
假设我有这个模型: class FooContainerModel(object): def __init__(self, foos): self.foos = foos 我希
简单模型(models.py): from django.db import models class MyModel(models.Model): start_date = models.D
我正在为一个大型 Django 应用程序编写测试,作为这个过程的一部分,我正在逐渐为 Django 项目中不同应用程序的所有模型创建工厂。 但是,我在 FactoryBoy 中遇到了一些令人困惑的行为
我正在为我们的 django 应用程序构建大量测试,我正在使用 FactoryBoy Profile 模型有一个gender 字段,定义如下: class Profile(models.Model):
我使用 pytest 作为框架来测试我的应用程序,我也想使用 pytest factoryboy。到目前为止,我的 conftest.py 看起来很像这个例子: import factory from
我正在为具有多个应用程序的大型 Django 应用程序编写测试。作为这个过程的一部分,我逐渐为 Django 项目中不同应用程序的所有模型创建工厂。 但是,我在使用 FactoryBoy 时遇到了一些
我正在使用 factoryboy 来模拟如下所示的模型,我想知道是否有一种更简洁的方法不需要复制所有字段。 class ShippingContainer(models.Model): wei
我有一组工厂,我在测试阶段通过一个名为 Create 的便捷函数运行这些工厂。当我需要引用现有项目时,我将其作为参数传递,如果没有,我会使用 FactoryBoy 创建一个新项目: def Creat
出于测试目的,我正在尝试通过 factory_boy 覆盖自定义 Django 模型属性。但它似乎只是采用了模型的默认行为。工厂男孩不能更改自定义属性的默认行为吗? 这是我写的一个基本测试: 模型.p
在 FactoryBoy 中定义一个 ModelFactory 时,我需要访问由 SubFactory 创建的另一个模型的属性并将其分配给这个 ModelFactory 的属性。 这就是我想要做的:
可能是一个愚蠢的问题,但我已经用头撞墙有一段时间了。 我决定尝试 factory-boy 库来简化我的测试并定义了一个工厂: from . import models import factory c
我正在使用 Django并想使用 pytest 编写测试, pytest-django , pytest-factoryboy和 pytest-lazyfixtures . 我有使用多表继承的 Dja
我将 Django 3 与 Python 3.8 一起使用。我有以下型号... class Coop(models.Model): objects = CoopManager() na
我将 Flask 和 SQLAlchemy(通过 Flask-SQLAlchemy 扩展)与 Factory_Boy 一起使用. 我的 GearItem 模型有一个指向 GearCategory 的外
我刚开始使用factory boy与 Django 。它有一个设置 FACTORY_DJANGO_GET_OR_CREATE这意味着如果已经存在一个新对象,它将不会创建一个新对象。但是当我要求一个现有
我正在一家模型工厂工作,我正在尝试填写一个包含选项列表的字段。当我试图用工厂创建一个对象时,我试图从选择列表中随机填充一个选择,抛出一个异常: TypeError: 'choice' is an in
主题。 现在(Factory Boy 版本 2.4.1.)使用此代码: class ImageFactory(factory.django.DjangoModelFactory): class
我正在将 Django 应用程序的单元测试迁移到 py.test,但在单元测试中,他们使用 factory-boy 创建 django.contrib.auth.models.User 的实例。如何使
我是一名优秀的程序员,十分优秀!