Ibr*_*mad 3 python console unit-testing
在运行鼻子测试时,我想进入交互式控制台。但是,如果我将以下内容放在代码中的任何位置:
import code
code.interact(local=locals())
Run Code Online (Sandbox Code Playgroud)
Nose 只是打印 (InteractiveConsole) 并且不提供控制台来输入命令。Pytest 将 code.interact 视为失败。有没有办法在运行测试时进入控制台,同时还可以查看文件的更改?
在 pytest 下获得交互式会话的一种方法是设置断点
import pdb
pdb.set_trace()
Run Code Online (Sandbox Code Playgroud)
通常,pytest 会抑制这个交互式会话,并且会在它遇到断点时挂起。您可以通过运行带有-s标志的pytest 来解决这个问题,这会禁用命令行输出捕获。
在最新版本的 pytest 中,您可以pytest.set_trace()不使用-s标志来获得相同的行为。有关信息,请参阅文档。
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           672 次  |  
        
|   最近记录:  |