前言

在使用pytest框架的时候,经常会涉及对pytest命令进行二次封装,比如写一个shell或者python脚本调用pytest。这样做的好处是可以为用户提供几个运行场景,简化pytest的命令行参数使用。封装脚本需要对实际运行的pytest命令进行退出码判断,然后进行逻辑判断再返回给实际用户查看。

那么下面我来分享下pytest的框架退出码。

分析

如下图,是pytest的退出码的枚举类:ExitCode。

执行python3,输入:from pytest import ExitCode

然后输入:help(ExitCode)

由上面可以看出,pytest的退出码有六种:

0 : 所有的测试case都运行成功

1 :部分(或者全部)测试case运行结果失败

2:测试执行过程被用户中断(即跑测试case过程中,用户进行Ctrl + C命令)

3:发生了内部错误(可能是python脚本某些运行时错误)

4:pytest命令行使用错误(可能没有传递正确的命令行参数)

5:实际没有执行case(可能是执行了一个空的测试类)

查看退出码

运行pytest xxx后,在脚本执行完后,可以在命令行输入:echo $? ,可以查看退出码。

扩展退出码

如果你想要扩展以上退出码,定义属于一些更丰富的场景,可以使用pytest-custom_exit_code插件来实现。


博主:测试生财

座右铭:专注测试与自动化,致力提高研发效能;通过测试精进完成原始积累,通过读书理财奔向财务自由。

csdn:https://blog.csdn.net/ccgshigao

博客园:https://www.cnblogs.com/qa-freeroad/

51cto:https://blog.51cto.com/14900374