如何暂停正在运行的测试并等待用户输入?在
我有一个非常规的测试(python3,pytest),在继续测试之前,我想“暂停”向用户(我)请求id代码。在
我知道这是不规范的,想知道如何解决这个问题。在
示例测试:
def test_oauth_flow(self):
url_jwt = auth(id=client_id, scope=scope)
id_code = webbrowser.open_new(url_jwt)
# pause wait for user input.
# use code to complete flow etc....
auth = auth(code)
assert auth is 1
好吧,这将始终取决于您在测试什么,但我的建议是针对外部API运行ContractTests,并记录对后者的响应,使这些数据可用于您的功能测试。在
为了记录响应,您可以使用vcr,它是一个Ruby工具:https://github.com/vcr/vcr,但是还有一个python实现(我没有使用过)https://github.com/kevin1024/vcrpy
相关问题 更多 >
编程相关推荐