首页 > 解决方案 > 在测试中检查 CLI 的退出代码

问题描述

我正在为命令行工具编写自动化测试。本质上,我想使用各种选项调用 CLI 并测试退出代码和/或输出。

我的测试如下所示:

from mymodule.cli_tool import main

def test_args(capfd):
    with pytest.raises(SystemExit) as e:
        main(args=['--junk_option'])
    # check the exit code to make sure it is non-zero
    ???

如何查看退出代码?

标签: pythonpytestexit-code

解决方案


你需要检查value.code,像这样:

assert e.value.code != 0

推荐阅读