我有一个目录,里面有很多.py文件(比如test_1.py、test_2.py等等),每个文件都经过适当的编写,可以与nose一起使用。因此,当我运行nosetests脚本时,它会找到所有.py文件中的所有测试并执行它们。我现在想将它们并行化,以便所有.py文件中的所有测试都被视为可并行化并委托(delegate)给工作进程。似乎默认情况下,做:nosetests--processes=2完全不引入并行性,所有.py文件的所有测试仍然只在一个进程中运行我尝试在每个.py文件中放置一个_multiprocess_can_split_=True但这没有任何区别感谢您的任何意见!
是否有一个库,其中包含诸如成员身份和身份之类的Nose友好的断言(例如,assert_contains(x,y)、assert_is(a,b))? 最佳答案 Nose提供独立版本的stdlib断言:fromnose.toolsimportassert_in,assert_is对于较旧的Python,unittest2版本可能会使用类似于tools.py中的技术进行包装。 关于pythonNose:assertionlibrary?,我们在StackOverflow上找到一个类似的问题:
希望是一个简单的python/djangonose测试题,尽管我在nose的文档中找不到答案。在使用./manage.pytest运行测试后,如何停止显示覆盖率报告?我在覆盖率报告方面遇到了一个大问题,迫使我向后滚动几十行以获取我失败测试的回溯,这真的打断了我的工作流程!我喜欢使用nose,但如果我不知道如何摆脱它,我将不得不返回到vanilladjango测试。提前感谢您的想法!这是我必须回滚才能到达回溯的内容:./manage.pytest[...]===================================================================
它在文档中提到(http://nose.readthedocs.org/en/latest/api/core.html)但似乎没有任何示例,并且尝试它似乎在cwd中运行所有测试。 最佳答案 试试这个:测试模块.py:importloggingimportsysimportnoselogging.basicConfig(level=logging.INFO)#herearesometestsinthismoduledeftest_me():passif__name__=='__main__':#Thiscodewillrunthete
我已经成功安装了hstore扩展,当我syncdb时一切正常。(我正在使用djorm-ext-hstore)但是,nose创建了一个新的临时数据库来运行测试,并且没有在其中安装hstore。我需要在nose同步数据库之前在测试数据库上运行CREATEEXTENSIONHSTORE;,但我找不到关于如何执行此操作的任何信息。有什么想法吗? 最佳答案 这不是问题:解决此问题的最佳方法是在默认数据库template1上应用hstore扩展psql-dtemplate1-c'创建扩展hstore;'引用:Howtocreateanewdat
假设我有一个这样的测试套件:classSafeTests(unittest.TestCase):#snip20testfunctionsclassBombTests(unittest.TestCase):#snip10differenttestcases我目前正在做以下事情:suite=unittest.TestSuite()loader=unittest.TestLoader()safetests=loader.loadTestsFromTestCase(SafeTests)suite.addTests(safetests)ifTARGET!='prod':unsafetests=l
我是Python测试的新手,在这两者之间有一些困难。UnitTest、Pytest和鼻子。我正在构建一个测试库,它需要:安装一个包,更改conf重启deamons,并在Linux设备上取消安装包。哪一个测试框架在这三个测试框架之间最好?在测试结束时,我非常想拥有:n测试成功n跳过测试n测试失败你能提供一些建议吗?干杯 最佳答案 这是一个非常广泛的问题,有很多可用的资源。但是,我会推荐py.test,因为尽管有一套完整的工具,但入门非常容易。在开始之前,鼻比py.test需要更多的配置。UNITTest和Java中的JUnit一样,这
我有许多以编程方式运行的项目:nosetest--with-coverage--cover-html-dir=happy-sauce/问题是对于每个项目,覆盖模块都会覆盖index.html文件,而不是附加到它。有没有办法生成一个组合的super-index.html文件,其中包含我所有项目的结果?谢谢。 最佳答案 您不能合并HTML目录。您可以合并.coverage数据文件,但您必须直接使用coverage,而不是通过nose:$nosetest--with-coverageproj1$mv.coverage.coverage.1
类似于thisquestion,我想让Nose运行一个测试(或所有测试)n次——但不是并行。我在一个项目中有几百个测试;有些是一些简单的单元测试。其他是具有一定程度并发性的集成测试。在调试测试时,我经常想更努力地“打击”测试;bash循环有效,但会产生大量困惑的输出——不再是漂亮的单个“。”对于每个通过的测试。能够在某些试验中击败选定的测试似乎是要求Nose做的一件很自然的事情,但我在文档中的任何地方都找不到它。让Nose执行此操作的最简单方法是什么(除了bash循环)? 最佳答案 您可以writeanosetestasagener
问题:我们使用nose测试运行器已经有一段时间了。有时,我看到我们的测试有eq_()调用:eq_(actual,expected)而不是常见的:self.assertEqual(actual,expected)问题:与标准单元测试框架的assertEqual()相比,使用nose.tools.eq_有什么好处吗?它们实际上是等价的吗?想法:好吧,一方面,eq_更短,但它必须从nose.tools导入,这使得测试依赖于测试运行程序库,它可以使它更难切换到不同的测试运行器,比如py.test。另一方面,我们也经常使用@istest、@nottest和@attrNose装饰器。