- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 factory_boy创建测试装置。我有两个简单的工厂,由 SQLAlchemy 模型支持(在下面进行了简化)。
我希望能够多次调用 AddressFactory.create()
,并让它创建一个 Country
(如果它尚不存在),否则我希望它重新使用现有记录。
class CountryFactory(factory.Factory):
FACTORY_FOR = Country
cc = "US"
name = "United States"
class AddressFactory(factory.Factory):
FACTORY_FOR = Address
name = "Joe User"
city = "Seven Mile Beach"
country = factory.SubFactory(CountryFactory, cc="KY", name="Cayman Islands")
我的问题是:如何设置这些工厂,使 factory_boy 不会在每次创建地址时都尝试创建一个新的国家/地区?
最佳答案
在最新的factory-boy==2.3.1中可以添加FACTORY_DJANGO_GET_OR_CREATE
class CountryFactory(factory.django.DjangoModelFactory):
FACTORY_FOR = 'appname.Country'
FACTORY_DJANGO_GET_OR_CREATE = ('cc',)
cc = "US"
name = "United States"
假设 cc 字段是唯一标识符。
关于python - 避免与 factory_boy 工厂重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19147115/
当我创建 factory_boy 对象时,该对象似乎没有主键,我不确定为什么。这是我的模型和工厂: # models.py from django.db import models from djan
我使用 SQLalchemy 作为我的 ORM,并试图将我的测试装置移植到 factory_boy。我的模式包括一对多关系中的两个对象。 IE。一个模型的实例具有类似列表的结构和另一个模型的实例。示例
我对 Django 相当陌生。我正在尝试设置 groups字段为 User使用 factory_boy .默认User类有一个字段 _groups .我尝试设置它,但这没有帮助。 class Grou
我正在尝试从 milkman 迁移 Django 代码至 factory_boy . 假设我有一个模型: class BlogPost(models.Model): title = model
我正在使用 factory_boy 构建一个工厂,它生成一个 django 模型。我想看看用户内联输入了哪些参数。我的工厂本身看起来像这样 class SomeFactory(factory.djan
我试图继承两个 ~Factory factory_boy 类,但似乎只继承了第一个类,第二个被忽略了。 (他们确实有一个共同的 parent 。) class BasicFactory(factory
我是 Django 的 Factory_boy 新手。花了一些时间后,我了解了如何为用户模型创建工厂。 我使用的是默认用户模型,以下是我的工厂。我正在使用 Faker 来实现随机性 import fa
我正在使用 factory_boy创建测试装置。我有两个简单的工厂,由 SQLAlchemy 模型支持(在下面进行了简化)。 我希望能够多次调用 AddressFactory.create(),并让它
我是一个相对的 Django 初学者,刚刚开始为我的项目做一些测试。我想要做的是使用登录到 Django Admin 站点的 selenium 构建一个功能测试。 我第一次学习本教程 http://w
当尝试对我的代码的某些部分进行单元测试时,我需要一个用户登录。为了减少装置的数量,我使用 django_factory_boy 用户工厂,但生成的用户无法进行身份验证。 from django_fac
factory_boy 默认为序列 1。如何传递一个数字以用作不同的起始数字?我可以将 _setup_next_sequence() 方法子类化,但我怎样才能给它一个要使用的变量? # File: m
我不明白为什么 factory_boy 优于直接在 Django 测试中创建 ORM/模型实例。 factory_boy 网站几乎没有解释使用它的好处。 它作为固定装置的替代品是有意义的,因为固定装置
Factory_boy 使用 fake-factory (Faker) 生成随机值,我想在我的 Django 测试中直接使用 Faker 生成一些随机值。 Factory_boy 文档建议使用 fac
我正在使用 factory_boy 替换 Django 应用程序中的固定装置。我有一个产品模型,应该有很多优惠和商家。 #models.py class Product(models.Model):
如何在 Python 的 factory_boy 中为我的所有工厂设置默认语言环境? 在文档中说应该用 factory.Faker.override_default_locale 设置它,但这对我的伪
我正在使用 SQLAlchemy 作为 ORM 开发 Pyramid 应用程序。我正在尝试使用类方法测试模型: # this is essentially a global used by all t
我目前正在使用 factory_boy 在我的测试中创建固定装置。Factory_boy 文档只提到了 SubFactory,它可以像模型中的 ForeignKey 字段一样工作。但是,ManyToM
我正在尝试使用 factory_boy 来帮助为我的测试生成一些 MongoEngine 文档。我在定义 EmbeddedDocumentField 对象时遇到问题。 这是我的 MongoEngine
我正在尝试使用 factory_boy 为这些模型创建工厂: class Course(models.Model): group = models.OneToOneField(Group)
我决定在我的简单 django 应用程序中使用 factory_boy 进行测试。 但我有一个简单的例子的问题。这是我的简单测试的代码。 from django.utils import unitte
我是一名优秀的程序员,十分优秀!