【发布时间】:2010-11-08 03:03:13
【问题描述】:
我正在为我的工具编写端到端测试,该工具是用 Python 编写的。该工具读取文件作为输入。我想测试它的退出代码和它的输出。
这是一个相当普遍的习语,我已经看到它以多种方式完成。在 PHP 项目中,每个测试都是一个文件,并且有如下几行:INPUT:、EXPECTED:、EXPECTED_REGEX: 等。在我自己的phc 项目中,每个文件都是一个普通的源文件,但带有注释添加到顶部,其中包括 EXPECTED 等关键字。我想我已经从gcc 复制了它,它使用了一个用 tcl 编写的更复杂的工具。
是否有在 Python 中执行此操作的框架、库等?它应该:
- 读取源文件
- 解析与预期输出、退出代码、预期找到或未找到的单词/正则表达式相对应的特殊关键字(或类似关键字),
- 检查输出是否正确。
虽然这在理论上似乎并不难,但我记得以前在实现这个时有很多边缘情况(尤其是涉及转义),并且宁愿不重新发明轮子。
【问题讨论】:
标签: python testing end-to-end