我希望能够将一个值从一个fixture返回到多个测试/测试类,但传递的值是一个函数。这是我的代码:importpytest@pytest.fixture()defuser_setup():user={'name':'chad','id':1}returnuser@pytest.mark.usefixtures('user_setup')classTestThings:deftest_user(self):assertuser_setup['name']=='chad'输出是:===================================FAILURES=============
根据Wikipedia和各种articles最佳做法是将测试分为单元测试(首先运行)和集成测试(第二运行),其中单元测试通常非常快并且应该在CI环境中的每个构建中运行,但是集成测试需要更长的时间才能运行并且应该更像是每天运行。有没有办法在pytest中划分这些?大多数项目似乎没有多个测试文件夹,所以有没有办法确保我根据情况(CI与每日构建)只运行单元、集成或两者?在计算测试覆盖率时,我假设我必须同时运行两者。在尝试将测试划分为这些类别时,我是否采用了正确的方法?是否有某个项目的一个很好的例子已经做到了这一点? 最佳答案 是的,您可以
所以我一直在尝试让pytest基于一些命令行参数在不同的环境中运行selenium测试。但它一直抛出这个错误:TypeError:setup_class()takesexactly2arguments(1given)似乎理解setup_class有2个参数,但是host没有被传递。以下是setup_class的代码:defsetup_class(cls,host):cls.host=host这是conftest.py文件:defpytest_addoption(parser):parser.addoption("--host",action="store",default='local
我的Python项目导入pytest2.9.0没有任何问题。我想创建一个新的空目录,该目录仅在测试session期间有效。我看到pytest提供临时目录支持:https://pytest.org/latest/tmpdir.htmlYoucanusethetmpdirfixturewhichwillprovideatemporarydirectoryuniquetothetestinvocation,createdinthebasetemporarydirectory.tmpdirisapy.path.localobjectwhichoffersos.pathmethodsandmor
我正在使用具有pytest依赖性的pytest开发功能测试套件。我99%喜欢这些工具,但我不知道如何让一个文件中的测试依赖于另一个文件中的测试。理想情况下,我希望对依赖者进行零更改,并且只更改依赖者中的内容。我希望测试能够像这样依赖于test_one:#contentsoftest_one.py@pytest.mark.dependency()deftest_one():#dostuff@pytest.mark.dependency(depends=["test_one"])deftest_point_one():#dostuff像这样:#contentsoftest_two.py@p
pytest新手...我在conftest.py中有以下内容,用于从命令行收集团队参数,并读入yaml配置文件:importpytestimportyamldefpytest_addoption(parser):parser.addoption('--team',action='store',)@pytest.fixturedefteam(request):returnrequest.config.getoption('--team')@pytest.fixturedefconf(request):withopen('config.yml','r')asf:conf=yaml.load
我正在用pytest编写测试,我遇到了下一个问题:我有一个测试一些变量的测试,然后我执行一些繁重的计算,然后我想执行另一个测试。问题是-如果第一个assert失败,则整个测试失败,并且pystest不会执行第二个测试。代码:classTestSomething:deftests_method(self,some_variables):#Someactionsthattakealotoftime!assertsome_var==1#Someactionsthattakealotoftime!assertsome_var==2我知道这个测试方法可以分为两种方法,但这里的性能问题很关键。有一
我有以下最小的setup.py:importsetuptoolssetuptools.setup(setup_requires=['pytest-runner'],tests_require=['mock','pytest'],test_suite='tests',python_requires='>=2.7',)运行时pythonsetup.pytest我不断收到以下错误:回溯(最近调用最后):文件“setup.py”,第8行,在python_requires='>=2.7',File"/Users/project/tmp/env/lib/python2.7/site-package
我想要一个所有失败测试的列表,以便在session结束时使用。Pytest允许您定义一个Hookpytest_sessionfinish(session,exitstatus),它在session结束时调用,我希望在其中获得该列表。session是一个_pytest.main.Session实例,具有属性items(类型list),但我找不到该列表中的每个item是否通过或失败。如何在session结束时检索所有失败测试的列表?如何在使用pytest-xdist插件时完成,我想在主进程中获取该列表。使用这个插件,session在master中甚至没有items属性:defpytest_
我有一个重固定测试函数,它在某些固定输入时失败(它应该)。我怎样才能指出这一点?这就是我现在正在做的,也许还有更好的方法。我是py.test的新手,所以我很感激任何提示。下一部分是所有输入灯具。仅供引用,example_datapackage_path在conf.test中定义@pytest.fixture(params=[None,'pooled_col','phenotype_col'])defmetadata_key(self,request):returnrequest.param@pytest.fixture(params=[None,'feature_rename_col'