草庐IT

qunit-fixture

全部标签

python - 如何使用 fixture 使 pytest 中的异步测试超时?

我正在测试一个可能会死锁的异步函数。我尝试添加一个fixture来限制函数在引发故障之前只运行5秒,但到目前为止它还没有奏效。设置:pipenv--python==3.6pipenvinstallpytest==4.4.1pipenvinstallpytest-asyncio==0.10.0代码:importasyncioimportpytest@pytest.fixturedefmy_fixture():#attempttostartatimerthatwillstopthetestsomehowasyncio.ensure_future(time_limit())yield'egg

python - pytest fixtures 的范围可以被覆盖吗?

pytest内置fixture的作用域可以改变吗?这行不通:@pytest.fixture(scope="class")defmyFixture(tmpdir):pass...因为tmpdir是函数范围的:ScopeMismatch:Youtriedtoaccessthe'function'scopedfixture'tmpdir'witha'class'scopedrequestobject,involvedfactories是否可以覆盖pytest的内置fixture的范围,以便我可以获得类范围的tmpdirfixture? 最佳答案

python - pytest中fixture和yield_fixture的区别

我正在检查pytestfixtures,下面看起来很相似,最新的作品也很相似。是的,yield_fixure的可读性更好,但是有人可以让我知道到底有什么区别。在下面提到的情况下,我应该使用哪个?@pytest.fixture()defopen_browser(request):print("Browseropened")defclose_browser():print("browserclosed")request.addfinalizer(close_browser)return"browserobject"@pytest.yield_fixture()defopen_browser

python - 传递给 pytest fixture 的参数可以作为变量传入吗?

我有两个简单的测试设置,我试图将它们组合在一个fixture中并希望测试函数将“参数”传递给fixture。这是一个人为的例子,用来解释我的问题。假设我有以下pytestfixture:@pytest.fixture(scope="module",params=['param1','param2'])defmyFixture(request):ifrequest.param=='param1':p=5elifrequest.param=='param2':p=10returnp#wouldliketosetrequest.param=['param1']formyFixturedeft

python - PyDev 使用模块共享 fixture 运行 pytest 单元测试失败

我在使用pyDev运行pytest单元测试时遇到问题。我尝试使用模块共享fixture和应该在最后一次测试后执行的终结器来运行单元测试。但是在pyDev中运行单元测试时,它不使用同一个实例,而是创建两个不同的实例。该示例在控制台中或从pydev中的脚本启动时运行良好。我在Win7上使用平台Python2.7.3、pytest-2.3.4、pyDev2.7.3.2013031601、Eclipse4.2。我尝试了http://pytest.org/latest/fixture.html中的示例pydev的输出是:=============================testsessi

python - Pytest 在一个函数中两次使用相同的 fixture

对于我的web服务器,我有一个loginfixture,它创建一个用户并返回发送请求所需的header。对于某个测试,我需要两个用户。如何在一个函数中两次使用相同的fixture?fromtest.fixturesimportloginclassTestGroups(object):deftest_get_own_only(self,login,login):pass 最佳答案 另一种方法是复制fixture函数。这既简单又正确地处理了参数化的装置,调用了带有两个装置的所有参数组合的测试函数。下面的示例代码提出了9个断言:impor

python - pytest fixtures 以什么顺序执行?

对于我正在测试的应用程序,我想创建一个autouse=True猴子修补的固定装置smtplib.SMTP.connect如果他们尝试意外发送电子邮件,则测试失败。但是,在我确实希望测试发送电子邮件的情况下,我想使用不同的fixture来记录这些电子邮件(最有可能通过使用smtpserver中的pytest-localserverfixture并猴子修补connect方法来使用该装置返回的主机/端口)当然,只有当autousefixture在另一个fixture(作为funcarg加载)之前执行时才能工作。是否有任何执行固定装置的特定顺序和/或是否有保证执行顺序的方法?

html - Polymer 2.x 单元测试将可选内容传递给 fixture 以绑定(bind)到目标属性

我正在尝试将数据插入测试夹具,但目前无法实现。返回此错误:“已获得要标记的模型,但模板不是可绑定(bind)类型”我的测试代码如下:suite('',function(){varmyEl;setup(function(){myEl=fixture('myFixture',{selectedInput:'testinput'});});test('initiatesmy-element',function(){//failsasgivenInputreturns"[[selectedInput]]"assert.equal(myEl.givenInput,'testinput');});

Docker-compose redis : start with fixture?

我正在使用docker-compose创建一个redis容器。但是,我需要它以一些默认键值开头。这可能吗? 最佳答案 您需要修改您的DockerCompose文件,您也可以从一些包含键值的文件添加,但这里是在DockerCompose文件中添加和获取键的最简单示例。version:'2'services:redis:image:'bitnami/redis:latest'environment:-ALLOW_EMPTY_PASSWORD=yesports:-'6379:6379'command:-/bin/sh--c-|nohupr

python - Golang 测试中的 fixture

来自python世界,fixtures非常有用(Fixtures为可重用状态/支持逻辑定义了Python契约,主要用于单元测试)。我想知道Golang中是否有类似的支持,它可以让我使用一些预定义的装置运行我的测试,比如设置服务器、拆除它、在每次运行测试时做一些重复的任务?有人能给我指出一些在Golang中做同样事情的例子吗? 最佳答案 如果你想使用标准的Go测试工具,你可以定义一个带有签名的函数TestMain(m*testing.M)并将你的fixture代码放在那里。来自testingpackagewiki:Itissometi