如何在funcargs函数中插入pdb?如何在funcargs函数中看到print语句的输出?
我原来的问题包括以下内容,但事实证明我只是在伪装错误的funcarg。叹息。
我试过了:
print "hi from inside funcargs"
使用和不使用-s调用。
我试过了:
import pytest pytest.set_trace()
和
import pdb pdb.set_trace()
和
raise "hi from inside funcargs"
没有产生任何输出或导致测试失败。
答案 0 :(得分:2)
但默认情况下,funcargs会为您提供回溯和输出/错误 - 您使用的插件是什么?有些东西显然隐藏了它
例如程序
def pytest_funcarg__foo(request):
print 'hi'
raise IOError
def test_fun(foo):
pass
py.test调用给了我两个 - funcarg函数和文本中的回溯
答案 1 :(得分:1)
调试funcarg:
def pytest_funcarg__myfuncarg(request):
import pytest
pytest.set_trace()
...
def test_function(myfuncarg):
...
然后:
python -m pytest test_function.py
当Ronny回答时,为了查看funcarg的输出,pytest -s
有效。