首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >忽略特定的错误代码(pytest没有测试警告错误代码5)

忽略特定的错误代码(pytest没有测试警告错误代码5)
EN

Stack Overflow用户
提问于 2016-11-15 14:17:25
回答 3查看 1K关注 0票数 3

我有一个程序来测试我提供的脚本/命令的错误代码。在某些情况下,命令行返回一个我想忽略的警告错误代码(用0退出,而不是5)。我希望其他错误代码能够传递相同的错误代码,并尽可能简单地传递(保持单行命令)。

我尝试使用pytest || [ $? -eq 5 ],它忽略来自命令的错误代码5,但将用1替换所有非零错误代码(而不是实际的错误代码)。

我想一个比我更有经验的人能比我更快地想出一个更好的解决方案。

一些更具体的情况:

我在用pytest测试我的项目。其中一些人目前没有测试,pytest的默认行为是将其视为错误(错误代码5)。我想把这个错误看作是一个成功。实际上,我希望特拉维斯把这个错误作为成功的威胁。

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-11-15 14:33:10

使用算术表达式:

代码语言:javascript
运行
复制
exit $(( $? == 5 ? 0 : $? ))
票数 5
EN

Stack Overflow用户

发布于 2016-11-15 14:27:29

您只需捕获、测试和(重新)提高适当的状态即可。

代码语言:javascript
运行
复制
command
case $? in
  5) exit 0 ;;
  *) exit ;;
esac
票数 3
EN

Stack Overflow用户

发布于 2016-11-15 15:17:12

最后我做了以下几件事:

代码语言:javascript
运行
复制
pytest ... ; err=$? ; if (( $err != 5 )) ; then exit $err ; fi

因为出于某种原因,拉斯兰的回答在特拉维斯执行时有一些逃避的问题,而切普纳的回答似乎不那么清晰。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40612107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档