草庐IT

argparse_test

全部标签

Python 文档测试 : skip a test conditionally

我知道如何使用#doctest:+SKIP跳过doctest,但我不知道如何根据运行时条件有时跳过测试.例如:>>>ifos.path.isfile("foo"):...open("foo").readlines()...else:...pass#doctest:+SKIP['hello','world']这就是我想做的事情。我也会接受运行测试的解决方案,但如果不满足条件(即无条件运行测试但修改预期结果),则将预期结果更改为带有回溯的异常。 最佳答案 如果您不想对输出进行测试,您可以返回一个特殊值。让我们调用_skip这个特殊值:如

python - 如果 py.test 的另一个测试失败,我该如何跳过测试?

假设我有这些测试函数:deftest_function_one():assert#etc...deftest_function_two():#shouldonlyruniftest_function_onepassesassert#etc.如何确保test_function_two仅在test_function_one通过时运行(我希望这是可能的)?编辑:我需要这个,因为测试二正在使用测试一验证的属性。 最佳答案 您可以使用名为pytest-dependency的pytest插件.代码可以是这样的:importpytest@pyte

python - py.test : Show local variables in Jenkins

到目前为止,我们通过Jenkins调用py.test。如果测试失败,我们会看到像这样的通常的堆栈跟踪Traceback(mostrecentcalllast):File"/home/u/src/foo/bar/tests/test_x.py",line36,intest_schema_migrationserrors,out))AssertionError:Unknownoutput:["Migrationsfor'blue':",...]如果我能像在Django调试页面中那样看到局部变量(参见https://djangobook.com/wp-content/uploads/figu

python - 没有输出,即使有 `py.test -s`

我想将py.test与hunter结合使用:PYTHONHUNTER="module_startswith='foo'"py.test-s-ktest_bar不幸的是,hunter的输出(trace)不可见。版本:foo_cok_d@aptguettler:~$py.test--versionThisispytestversion3.4.2,importedfrom/home/foo_cok_d/local/lib/python2.7/site-packages/pytest.pycsetuptoolsregisteredplugins:pytest-xdist-1.22.2at/ho

python - 在 sklearn.cross_validation 中使用 train_test_split 和 cross_val_score 的区别

我有一个包含20列的矩阵。最后一列是0/1标签。数据链接是here.我正在尝试使用交叉验证在数据集上运行随机森林。我使用两种方法来做到这一点:使用sklearn.cross_validation.cross_val_score使用sklearn.cross_validation.train_test_split当我做我认为几乎完全相同的事情时,我得到了不同的结果。为了举例说明,我使用上述两种方法运行双重交叉验证,如下面的代码所示。importcsvimportnumpyasnpimportpandasaspdfromsklearnimportensemblefromsklearn.me

python - argparse:展平操作结果 ='append'

我想制作一个支持表单参数列表的脚本./myscript--envONE=1,TWO=2--envTHREE=3这是我的尝试:importargparseparser=argparse.ArgumentParser()parser.add_argument('--env',type=lambdas:s.split(','),action='append',)options=parser.parse_args()printoptions.env$./myscript--envONE=1,TWO=2--envTHREE=3[['ONE=1','TWO=2'],['THREE=3']]当然我可

Python argparse 可选子参数

我想为我的程序提供一个参数,其中包含一些必需参数和一些可选参数。像这样:[--printtext[color[size]]所以你可以传递其中任何一个:mycommand--printhellomycommand--printhellobluemycommand--printhellored12可能有多个这样的,所以它必须是一个单独的add_argument。例如:[--printtext[color]][--outputfilename[overwrite]]我可以实现接近我想要的参数:>>>parser=argparse.ArgumentParser()>>>act=parser.a

python - 在 Flask-SQLAlchemy 中隔离 py.test 数据库 session

我正在尝试使用Flask-SQLAlchemy构建一个Flask应用程序;我使用pytest来测试数据库。其中一个问题似乎是在不同测试之间创建隔离的数据库session。我编写了一个最小的完整示例来突出问题,请注意test_user_schema1()和test_user_schema2()是相同的。文件名:test_db.pyfrommodelsimportUserdeftest_user_schema1(session):person_name='FranClan'uu=User(name=person_name)session.add(uu)session.commit()ass

Python:将 getpass 与 argparse 一起使用

我环顾四周,但找不到任何东西。基本上我想知道是否可以将getpass.getpass()与argparse一起使用。目前我有以下解决方法,我只是想知道是否有更好的方法:importargparseimportgetpassparser=argparse.ArgumentParser(description="Somedescription")parser.add_argument('-p',metavar="password",default="foobarblah123",help="passwordforuser(defaulttopromptuser)")...parsed_ar

python - py.test : format failed assert AND print custom message

py.testassertdocs说...ifyouspecifyamessagewiththeassertionlikethis:asserta%2==0,"valuewasodd,shouldbeeven"thennoassertionintrospectiontakesplacesatallandthemessagewillbesimplyshowninthetraceback.Python的内置unittest模块也执行此操作,除非您的TestCase设置longMessage=True.拥有漂亮的断言格式对测试开发人员友好,而自定义消息对业务需求/人性化更友好。当您不在测试上