C/C++中命令行程序的回归测试

regression test for command line program in C/C++

本文关键字:程序 回归测试 命令行 C++      更新时间:2023-10-16

我有一个linux实用程序,它解析结构化输入(一个文本文件),处理它并将结果打印到屏幕上。例如:(输入)

COMMAND=create
    NAME=Stack
    SURNAME=Overflow

我的实用程序将上面的文本文件作为输入,并尝试在数据库中创建一个对象(堆栈、溢出)。如果操作成功执行,我的程序将返回如下内容:

COMMAND=create
    Code=0
    Result=OK

或者在错误的情况下

COMMAND=create
    Code=10
    Result=Duplicate entry

我正在寻找一种为二进制文件创建回归套件的好方法。有什么适合我的想法吗?在C/C++中有JUnit的替代方案吗?

Google测试是一个很棒的C++框架,但它有一点学习曲线:https://github.com/google/googletest/

我推荐CTest,它是CMake的一部分。配置和添加测试非常简单,只需创建一个测试可执行文件并调用test("代码应该为0",Code=0,true);或者类似的。。。它同时适用于c和c++;)