前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pytest文档49-命令行参数--tb的使用

pytest文档49-命令行参数--tb的使用

作者头像
上海-悠悠
发布2020-09-10 17:43:05
6440
发布2020-09-10 17:43:05
举报

前言

pytest 使用命令行执行用例的时候,有些用例执行失败的时候,屏幕上会出现一大堆的报错内容,不方便快速查看是哪些用例失败。 --tb=style 参数可以设置报错的时候回溯打印内容,可以设置参数(auto/long/short/line/native/no)

—tb=style

pytest -h 查看命令行参数,关于 --tb=style 参数的使用方式

代码语言:javascript
复制
>pytest -h--tb=style            traceback print mode (auto/long/short/line/native/no).

style 的值可以设置6种打印模式:auto/long/short/line/native/no

—tb=no

先写个简单的pytest用例,让他断言报错

代码语言:javascript
复制
# test_tb.py
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/def test_01():
result = "hello"
expected = "world"
assert result == expected

命令行执行pytest test_tb.py 此时屏幕上会显示整个用例的回溯信息

代码语言:javascript
复制
test_tb.py F                                                             [100%]================================== FAILURES ===================================
___________________________________ test_01 ___________________________________def test_01():
result = "hello"
expected = "world"
>       assert result == expected
E       AssertionError: assert 'hello' == 'world'
E         - hello
E         + worldtest_tb.py:8: AssertionError
========================== 1 failed in 0.08 seconds ===========================

加上 --tb=no 参数执行

代码语言:javascript
复制
test_tb.py F                                                             [100%]========================== 1 failed in 0.05 seconds ===========================

--tb=no 是不显示报错的回溯内容

—tb=line

line 模式使用一行输出所有的错误信息

代码语言:javascript
复制
test_tb.py F                                                             [100%]================================== FAILURES ===================================
D:\soft\kecheng202004\demo\test_tb.py:8: AssertionError: assert 'hello' == 'world'
========================== 1 failed in 0.06 seconds ===========================

—tb=short

short 模式显示断言报错的位置,不显示用例前面的代码

代码语言:javascript
复制
test_tb.py F                                                             [100%]================================== FAILURES ===================================
___________________________________ test_01 ___________________________________
test_tb.py:8: in test_01
assert result == expected
E   AssertionError: assert 'hello' == 'world'
E     - hello
E     + world
========================== 1 failed in 0.06 seconds ===========================

其它

—tb=auto 有多个用例失败的时候,只打印第一个和最后一个用例的回溯信息 —tb=long 输出最详细的回溯信息 —tb=short 输入assert的一行和系统判断内容 —tb=line 使用一行显示错误信息 —tb=native 只输出python标准库的回溯信息 —tb=no 不显示回溯信息

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 从零开始学自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • —tb=style
  • —tb=no
  • —tb=line
  • —tb=short
  • 其它
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档