fhtagn用 AWK 编写的微型 CLI 程序测试器

联合创作 · 2023-09-28 09:33

fhtagn 是一个微型 CLI 工具,用于对命令行程序进行读写测试。

假设你创建了一些程序command。你要为其创建一组端到端测试。有了 fhtagn,它就像创建一个有以下内容的tests.tush文件一样简单:

$ command --that --should --execute correctly
| expected stdout output

$ command --that --will --cause error
@ expected stderr output
? expected-exit-code

运行测试:

./fhtagn.awk tests.tush

事实上,这是 darius/tush、adolfopa/tush的重新实现。但更简单(单个微小的 AWK 脚本)和更快,因为:

  • 它使用/dev/shm而不是/tmp
  • 它将预期结果与代码中的实际结果进行比较,如果不匹配,只调用diff来显示差异
  • 它不会为每个测试创建一个 sandbox folder
  • 它不使用mktemp而是在代码中生成随机名称

设计原则:

  • 最小化运行的外部进程
  • 最小化 I/O 操作
浏览 4
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报