有进度条和更智能的回溯的测试运行程序
nose-progressive的Python项目详细描述
功能
进度条
nose progressive表示底部静止进度条中的进度 在屏幕上。它支持多种终端类型,并对 终端的大小调整与所有的优雅它可以集合。与之不同的是 标准点拉伸测试运行程序,您始终可以看到正在运行的测试。
回溯:及时、美观、实用
像大多数测试运行者一样,nose通常会等到痛苦的结束才显示错误。 以及失败回溯,这在大型测试套件中浪费了大量时间 花很多分钟完成。我们一有回溯就显示,所以你 可以立即开始追踪它们,而且我们可以更好地格式化它们:
明智地使用颜色和其他格式使回溯易于扫描。 在函数名列表中向下滑动以保持 调试时放置。
省略 回溯(最近的最后一次调用) 行并使用相对 路径(可选)以及许多其他调整,在有限的 屏幕空间。
以一种可以反馈给nose的格式识别失败的测试 易于重新运行:
FAIL: kitsune.apps.wiki.tests.test_parser:TestWikiVideo.test_video_english
要重新运行上述操作,请执行以下操作:
nosetests --with-progressive kitsune.apps.wiki.tests.test_parser:TestWikiVideo.test_video_english
测试本身的框架总是排在第一位;我们跳过任何设置框架 从测试线束等。这能让你集中精力。 而且,像unittest本身一样,我们隐藏任何下降到琐碎的帧 比较帮助程序,如 assertequals() 或 assertraises()
(事实上,我们比unittest做得更好。我们不只是开始躲起来 第一个单元的帧在测试后测试一个;我们只剪掉最后一个 unittest帧的连续运行。这使您可以在 来自模拟库的装饰器,它伪装成unittest,并且仍然 查看您的回溯。)
编辑器快捷方式(见下文)允许您直接跳到 编辑.
编辑器快捷键
对于回溯的每一帧,nose progressive提供一个编辑器快捷方式。 这是文件系统路径和行号的组合 vi、emacs、bbedit命令行工具和许多其他 编辑:
vi +361 apps/notifications/tests.py # test_notification_completeness
只需三次单击(或您所拥有的)来选择行,然后复制并粘贴它 在命令行上。你会在你的编辑那里遇到麻烦的 选择的。作为奖励,编辑快捷方式比股票更紧凑 回溯格式。
您可以通过设置这些编辑器中的任何一个来设置要使用的编辑器 检查顺序:
- 命令行选项I>
- nose_progressive_编辑器 环境变量
- 环境变量
自定义错误类
nose progressive完全支持自定义错误类,如skip和 不赞成的我们注意到实时提升它们的测试,就像正常情况一样 错误和失败:
TODO: kitsune.apps.sumo.tests.test_readonly:ReadOnlyModeTest.test_login_error
但是,当错误类不被视为失败时,我们不会显示它 除非使用 --progressive advisories 选项,即使在这种情况下, 我们没有显示回溯(因为通常重要的信息是 测试被跳过,而不是被跳过的行)。这源于 我们优先考虑有用信息的理念。
自定义错误类与 失败和错误:
4 tests, 1 failure, 1 error, 1 skip in 0.0s ^^^^^^ Bold ^^^^^^
表示失败的错误类的非零计数是粗体的 眼睛和对应的粗体细节在卷轴上。只是 按粗体键,你会发现你的错误。
django支持
nose progressive可以通过django nose运行django测试。只需安装 django nose,然后像这样运行您的测试:
./manage.py test --with-progressive --logging-clear-handlers