草庐IT

2Fixture

全部标签

python - 将命令行参数作为参数传递给 py.test fixture

诚然,这不是开始的最佳方式,更重要的是,fixture参数已解析,即Options.get_option()在其他一切之前被调用。建议和建议将不胜感激。来自config.pyclassOptions(object):option=None@classmethoddefget_option(cls):returncls.option来自conftest.py@pytest.yield_fixture(scope='session',autouse=True)defsession_setup():Options.option=pytest.config.getoption('--remot

python - 如何使用日志记录、pytest fixture 和 capsys?

我正在尝试对一些使用日志库的算法进行单元测试。我有一个可以创建记录器的装置。在我的第一个测试用例中,我没有使用这个fixture,而是使用打印记录到标准输出。此测试用例通过。在我的第二个测试用例中,我使用了这个fixture,但没有在pytest文档中记录。我只是在我的测试中调用相关函数来获取记录器。然后我使用记录器记录到标准输出。此测试用例通过。在我的第三个测试用例中,我按照pytest文档中的说明使用了这个fixture。fixture作为参数传递给测试函数。然后我使用记录器记录到标准输出。此测试用例失败!它在stdout中找不到任何内容。但是在错误消息中,它说我的日志在捕获的标准

python - 如何使用 SqlAlchemy 从数据库生成 Fixture

我开始使用Flask-SQLAlchemy编写测试,我想为它们添加一些固定装置。我的开发数据库和大量表格中有很多好的数据,因此手动写入数据会很烦人。我真的很想将开发数据库中的数据采样到固定装置中,然后使用它们。执行此操作的好方法是什么? 最佳答案 我会用factoryboy要创建一个模型工厂,您只需执行以下操作:importfactoryfrom.importmodelsclassUserFactory(factory.Factory):classMeta:model=models.Userfirst_name='John'last

python - 从 pytest fixture 返回多个对象

我正在通过测试一个简单的事件发射器实现来学习如何使用pytest。基本上是这样的classEventEmitter():def__init__(self):...defsubscribe(self,event_map):#addslistenerstoprovidedinevent_mapeventsdefemit(self,event,*args):#emitseventwithgivenargs为了方便,我创建了一个用于测试的Listener类classListener():def__init__(self):...defoperation(self):#actuallistene

google-app-engine - 如何在 Google App Engine for Go 中设置数据 fixture

我希望在部署go项目时将一些数据装置放入数据存储中,类似于在Django中可以完成的操作。可能吗?如果没有,是否有其他选择? 最佳答案 如果您正在寻找一些配置来将数据放入数据存储区,答案是否定的。appengine的python和java版本也没有此功能。我认为appengine的django框架正在做的事情与您可以做的一样。只需将您需要的数据写入应用程序init方法中的数据存储区同样在init中,您检查数据是否已经写入。然后在应用程序启动时,他会检查它是否应该将一些固定数据写入数据存储区,并且您可以确定在处理第一个请求之前它就在那

google-app-engine - 如何在 Google App Engine for Go 中设置数据 fixture

我希望在部署go项目时将一些数据装置放入数据存储中,类似于在Django中可以完成的操作。可能吗?如果没有,是否有其他选择? 最佳答案 如果您正在寻找一些配置来将数据放入数据存储区,答案是否定的。appengine的python和java版本也没有此功能。我认为appengine的django框架正在做的事情与您可以做的一样。只需将您需要的数据写入应用程序init方法中的数据存储区同样在init中,您检查数据是否已经写入。然后在应用程序启动时,他会检查它是否应该将一些固定数据写入数据存储区,并且您可以确定在处理第一个请求之前它就在那

c++ - 每次使用不同的 fixture 多次执行一个测试用例

我有一个测试用例,我想针对不同的数据库状态执行该测试用例。我在fixture中将对象插入数据库(我想保持这种状态)。我想为数据库中的不同配置创建虚拟数据库初始化方法和专用fixture。我能想到的一种方法是:voiddoTest(){//testcodehere}BOOST_FIXTURE_TEST_CASE(test1,fixture1){doTest();}BOOST_FIXTURE_TEST_CASE(test2,fixture2){doTest();}BOOST_FIXTURE_TEST_CASE(test3,fixture3){doTest();}但是有没有更干净、更整洁的方

c++ - 每次使用不同的 fixture 多次执行一个测试用例

我有一个测试用例,我想针对不同的数据库状态执行该测试用例。我在fixture中将对象插入数据库(我想保持这种状态)。我想为数据库中的不同配置创建虚拟数据库初始化方法和专用fixture。我能想到的一种方法是:voiddoTest(){//testcodehere}BOOST_FIXTURE_TEST_CASE(test1,fixture1){doTest();}BOOST_FIXTURE_TEST_CASE(test2,fixture2){doTest();}BOOST_FIXTURE_TEST_CASE(test3,fixture3){doTest();}但是有没有更干净、更整洁的方

python - pytest fixture 的多个副本

假设我有一个像下面这样的简单fixture(使用pytest-django,但它也适用于pytest):@pytest.fixturedefmy_thing(request,db):thing=MyModel.objects.create()request.addfinalizer(lambda:thing.delete())returnthing当我的测试需要MyModel的单个实例时,这非常有用。但是如果我需要两个(或三个或四个)呢?我希望每个实例都是不同的,但要以相同的方式设置。我可以复制/粘贴代码并重命名fixture函数,但这似乎不太优雅。同样,我也试过:@pytest.fi

python - pytest fixture 的多个副本

假设我有一个像下面这样的简单fixture(使用pytest-django,但它也适用于pytest):@pytest.fixturedefmy_thing(request,db):thing=MyModel.objects.create()request.addfinalizer(lambda:thing.delete())returnthing当我的测试需要MyModel的单个实例时,这非常有用。但是如果我需要两个(或三个或四个)呢?我希望每个实例都是不同的,但要以相同的方式设置。我可以复制/粘贴代码并重命名fixture函数,但这似乎不太优雅。同样,我也试过:@pytest.fi