貌似pythonnosetest遇到sys.exit()会退出,mocking这个builtin也不起作用。 最佳答案 您可以trycatchSystemExit异常(exception)。当有人调用sys.exit()时引发。withself.assertRaises(SystemExit):myFunctionThatSometimesCallsSysExit() 关于python-如何在pythonnosetest中绕过"sys.exit()"?,我们在StackOverflow上
如何防止nosetests在其测试输出中散布日志输出?我只是像这样将日志记录添加到我的Django代码中:importlogginglogger=logging.getLogger(__name__)defhome_page(request,template):device=get_device_capabilities(request)device_type=get_device_type(device)logger.info("device_type="+device_type)logger.info("screen_width="+str(screen_width))当我像这样运
如何防止nosetests在其测试输出中散布日志输出?我只是像这样将日志记录添加到我的Django代码中:importlogginglogger=logging.getLogger(__name__)defhome_page(request,template):device=get_device_capabilities(request)device_type=get_device_type(device)logger.info("device_type="+device_type)logger.info("screen_width="+str(screen_width))当我像这样运
我希望将Nose用于在线集成测试套件。但是,其中一些测试的执行顺序很重要。也就是说,我想我会把一个快速插件放在一起,用我希望它执行的顺序来装饰测试:https://gist.github.com/Redsz/5736166defFoo(unittest.TestCase):@step(number=1)deftest_foo(self):pass@step(number=2)deftest_boo(self):pass通过查看我认为的内置插件,我可以简单地覆盖loadTestsFromTestCase并按修饰的“步骤编号”对测试进行排序。defloadTestsFromTestCase
我希望将Nose用于在线集成测试套件。但是,其中一些测试的执行顺序很重要。也就是说,我想我会把一个快速插件放在一起,用我希望它执行的顺序来装饰测试:https://gist.github.com/Redsz/5736166defFoo(unittest.TestCase):@step(number=1)deftest_foo(self):pass@step(number=2)deftest_boo(self):pass通过查看我认为的内置插件,我可以简单地覆盖loadTestsFromTestCase并按修饰的“步骤编号”对测试进行排序。defloadTestsFromTestCase
我们使用nose来发现测试并运行它们。所有测试都以TestCase兼容的方式编写,因此任何测试运行器都可以运行。问题是我们有一些目录没有任何测试。但是测试运行者继续从那里发现测试。如果其中一个目录有很多文件,它就会卡住。那么如何排除该目录呢?目前我正在执行nosetests--processes=10--verbosity2但是有一个名为scripts的目录需要很长时间才能从中发现测试。所以我想排除它。我试过了nosetests--processes=10--verbosity2--exclude='^scripts$'但没有运气。 最佳答案
我们使用nose来发现测试并运行它们。所有测试都以TestCase兼容的方式编写,因此任何测试运行器都可以运行。问题是我们有一些目录没有任何测试。但是测试运行者继续从那里发现测试。如果其中一个目录有很多文件,它就会卡住。那么如何排除该目录呢?目前我正在执行nosetests--processes=10--verbosity2但是有一个名为scripts的目录需要很长时间才能从中发现测试。所以我想排除它。我试过了nosetests--processes=10--verbosity2--exclude='^scripts$'但没有运气。 最佳答案
我的SUT看起来像:foo.pybar.pytests/__init__.py[empty]tests/foo_tests.pytests/bar_tests.pytests/integration/__init__.py[empty]tests/integration/foo_tests.pytests/integration/bar_tests.py当我运行nosetests--with-coverage时,我会得到各种详细信息我宁愿忽略的模块。但我不能使用--cover-package=PACKAGE选项,因为foo.py&bar.py不在一个包裹。(见后面的话题http://l
我的SUT看起来像:foo.pybar.pytests/__init__.py[empty]tests/foo_tests.pytests/bar_tests.pytests/integration/__init__.py[empty]tests/integration/foo_tests.pytests/integration/bar_tests.py当我运行nosetests--with-coverage时,我会得到各种详细信息我宁愿忽略的模块。但我不能使用--cover-package=PACKAGE选项,因为foo.py&bar.py不在一个包裹。(见后面的话题http://l
我们有带有古老Python2.4解释器的CentOS。但我们想用更新的2.5/2.6语法编写测试。假设我们安装了第二个Python解释器(例如python2.6),有什么办法吗运行'nosetests'shell命令并告诉它使用特定的Python解释器而不是默认解释器? 最佳答案 nosetests文件在Python中,因此只需在新版本中运行它即可。查找文件所在的位置:whichnosetests然后:python2.6/usr/bin/nosetests调整名称和路径以匹配您的系统。我还没有测试过,但这应该可以。