在nose打印的跟踪中包含 __traceback_info__
项目描述
nose_traceback_info
您是否希望在由nose产生的错误或失败跟踪中包含补充(调试)信息?您是否发现nose的失败详细插件不能满足您的需求(例如,因为您使用PyHamcrest匹配器)?使用Zope,Plone,Paste或WebError开发服务器软件?那么这个插件可能是您需要的解决方案:它允许您将任何详细的信息添加到跟踪中的任何框架。将跟踪转换为这样
Traceback (most recent call last): File "/.../nti.nose_traceback_info/src/nti/nose_traceback_info/tests/test_nose_traceback_info.py", line 39, in test_format_failure t, formatted, _ = self.plugin.formatFailure(None, exc_info) File "/.../nti.nose_traceback_info/src/nti/nose_traceback_info/__init__.py", line 48, in formatFailure return self.formatError( test, exc_info) File "/.../nti.nose_traceback_info/src/nti/nose_traceback_info/__init__.py", line 31, in formatError t, v, tb = exc_info TypeError: 'builtin_function_or_method' object is not iterable
的跟踪
TypeError: Traceback (most recent call last): Module unittest.case, line 331, in run testMethod() Module nti.nose_traceback_info.tests.test_nose_traceback_info, line 39, in test_format_failure t, formatted, _ = self.plugin.formatFailure(None, exc_info) - __traceback_info__: ("calling plugin with test and exc_info", None, <build-in function exc_info>) Module nti.nose_traceback_info, line 48, in formatFailure return self.formatError( test, exc_info) Module nti.nose_traceback_info, line 31, in formatError t, v, tb = exc_info - __traceback_info__: ("Test and exc_info args", None, <built-in function exc_info>) TypeError: 'builtin_function_or_method' object is not iterable
用法
一旦插件安装完成(使用 pip 或在 setup.py 或 requirements.txt 文件中),默认启用,就像 logcapture. 插件通过在每个跟踪帧中查找本地变量并格式化它们(在捕获的日志和显示在失败测试中的跟踪中)来运行。变量由 Zope 开发(并记录)的惯例定义;这些惯例也由 Paste 和 WebError 遵循,这意味着添加到帮助调试测试的信息也可以用于调试生产错误。
请参阅该文档以了解变量的详细信息。作为快速入门,最重要的最常用的变量是 __traceback_info__,您可以为它分配任意信息。《span class="docutils literal">repr》包含在跟踪中。
def formatError(self, test, exc_info): __traceback_info__ = "Test and exc_info args", test, exc_info t, v, tb = exc_info
选项
除了标准环境变量和启用插件的标志外,其他选项还控制一些行为。
- --traceback-long-filenames
在格式化的跟踪中使用完整的文件名,而不是模块名。
- --traceback-nologcapture
不要格式化日志中捕获的跟踪。
其他插件
此插件已知与 nose-progressive 正确合作,它也会调整跟踪。
更改
1.0.2 (2015-04-21)
添加对 PyPy、Python 3.4 和 Python 3.2 的支持。
1.0.1 (2013-12-14)
默认情况下,显示文件名而不是模块名。这更好地与 IDE 测试集成合作。
1.0.0 (2013-09-27)
初始发布
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分布
nti.nose_traceback_info-1.0.2.tar.gz (6.2 kB 查看散列)
构建分布
nti.nose_traceback_info-1.0.2-py3.4.egg (10.9 kB 查看散列)
nti.nose_traceback_info-1.0.2-py2.7.egg (10.5 kB 查看散列)
关闭
nti.nose_traceback_info-1.0.2.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 7b90cf0117be9495367e287b2fe2744a895352c7548832fb42cac002b9fb6e9e |
|
MD5 | 3be849f327d952de6f5fd0c61def85cf |
|
BLAKE2b-256 | 27f3e00c7e87cc83b9efd8f3cd269aa4d39e25bf6924143187b34b2e0c667899 |
关闭
哈希值 用于 nti.nose_traceback_info-1.0.2-py2.py3-none-any.whl
算法 | 散列摘要 | |
---|---|---|
SHA256 | b8789cd4847a09dcddc74688ea1b2fb8f862e220b50d160909de1deb2738933a |
|
MD5 | 17fde95c41843dba42b468acf891c4ac |
|
BLAKE2b-256 | bf12d7f2a6682b5a0cedfb9cc20e4cf6982fdc6ce675318cf4675e889bb1fff9 |