iis如何做网站,科技部 咖啡,营销网站流程与步骤,wordpress分享到朋友圈author: jwensh date: 20231130 pycharm 中 pytest 用例执行中 print 日志 standout 实时命令行输出
使用场景
在进行 websocket 接口进行测试的时候#xff0c;希望有一个 case 是一直执行并接受接口返回的数据
def on_message(ws, message):message json.loads(message)… author: jwensh date: 20231130 pycharm 中 pytest 用例执行中 print 日志 standout 实时命令行输出
使用场景
在进行 websocket 接口进行测试的时候希望有一个 case 是一直执行并接受接口返回的数据
def on_message(ws, message):message json.loads(message)if message is not None and message[total] 0:print(datetime.now().strftime(%Y-%m-%d %H:%M:%S.%f), message)class TestWss(unittest.TestCase):def test_bttc_todos(self):websocket.enableTrace(False)address *****url {}/test/todos/{}.format(BASE_ENV_URL, address)ws websocket.WebSocketApp(url,on_openon_open,on_messageon_message,on_erroron_error,on_closeon_close)ws.run_forever(dispatcherrel) # 这里回一直卡住不然程序停止rel.signal(2, rel.abort) # Keyboard Interruptrel.dispatch()直接点击 pycharm 上测试方法左侧的执行按钮 是没有任何 on_message 的日志输出 想要 on_message 中的日志能够实时打印可以修改 pytest 的执行参数
修改参数来达到实时输出日志的效果
设置 pycharm 执行测试使用的工具 第三步设置成 pytest pytest 也是兼容 nose 和 unittest 所以推荐 在用例用例/调试配置里设置命令的其他参数 --captureno 或者 -s (pytest -h 就能看到参数)
再次执行用例就能有实时日志了
最后 构建自动化测试用例时添加简洁且饱含核心信息的日志是非常有必要的。除了添加 pytest 参数形式来展示实时日志还可以使用 logging 模块来实现运行测试用例的实时输出。可以按自己的需求来如果只是调试什么的可以直接用参数如果是想要保留测试过程的重要数据建议使用 logging