8

我在我的 python 项目中使用 pytest 和 mock。

当我遇到涉及模拟对象(几乎所有对象)的测试失败时,回溯会深入模拟库源代码,而实际上触发失败的代码通常会滚动到视野之外。

有没有办法告诉 py.test 从回溯或类似的东西中排除已安装的库?噪音水平正在远离原本甜蜜的测试库。

4

2 回答 2

6

有一个技巧:__tracebackhide__将不会显示定义局部变量的函数。例子:

def some_support_code(x, y):
    __tracebackhide__ = True
    assert x == y
于 2013-09-08T08:06:45.877 回答
3

pytest-mock包括一个将隐藏模拟库中的回溯的功能。只需安装pytest-mock即可。

于 2016-05-17T08:55:57.853 回答