如何用Python测试命令行应用程序?

2024-06-17 08:35:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道Pythonunittest。我有一些使用它测试Python子程序的经验。在

现在我需要添加用Python编写的测试命令行应用程序(而不是只是一个Python函数)。我想用stdin中的某些参数和输入调用它,在stdout中使用测试输出。在

如何将测试命令行工具与其他unittest测试用例集成?在

或者用什么代替unittest?在


Tags: 工具函数命令行应用程序参数stdinstdout测试用例
1条回答
网友
1楼 · 发布于 2024-06-17 08:35:03

您仍然可以使用标准的unittest格式,并将整个应用程序作为标准函数进行测试。制作一个使脚本入口点成为简单包装的包装器,例如:

if __name__ == "__main__":
    sys.exit(main(sys.argv))

只要不滥用全局变量来保持状态,只需要测试main()函数。在

如果您想测试您无法控制的脚本,您仍然可以通过编写如下测试来使用unittest和{}:

^{pr2}$

相关问题 更多 >