微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – 我想在pytest测试中使用stdin

PyTest文档声明stdin被重定向到null,因为没有人会想要在批处理测试上下文中进行交互式测试.这是事实,但交互并不是stdin的唯一用途.我想测试使用stdin的代码,就像使用任何其他文件一样.我很高兴stdout和sterr被捕获,但是如何实际将stdin连接到io.StringIO对象,以符合PyTest的方式说?

解决方法:

你可以mock it

def test_method(monkeypatch):
    monkeypatch.setattr('sys.stdin', io.StringIO('my input'))
    # test code

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐