如何捕获堆栈跟踪和失败步骤的异常

时间:2016-02-14 02:52:36

标签: logging python-behave

我是新手,并且不熟悉其日志捕获范例。

当一个步骤由于异常而失败时,我需要提取堆栈跟踪(traceback)以进行自定义处理。

如何捕获此信息?

谢谢!

编辑:我不是在问如何捕获预期的异常。我反而询问如何获取失败测试的堆栈跟踪。

这必须是我在文档中找不到的Behave框架的基本功能。我不是在寻找任何与众不同的东西。

1 个答案:

答案 0 :(得分:0)

堆栈跟踪和异常包含在step对象中。

import traceback

if step.status == "failed":

    txt_tb = u"".join(traceback.format_tb(step.exc_traceback)
    txt_ex = step.exception.message