代码生成工具测试

Code Generation tool testing

本文关键字:测试 工具 代码生成      更新时间:2023-10-16

我在C++中编写了小code generation工具,它使用的是ANTLR C++,输入到工具是C++ header file。基本上给定一个类型,它调用我的产品特定api例如,

class Test {
private:
   int a;
   char b;
   long c;
public:
   serialize();
}

对于这个类,它将生成如下代码

Test::serialize() {
     serialize_int(a);
     serialize_char(b);
     serialize_long(c);
}

现在我可以把这整个生成的代码在我现有的Unit Test和验证一切都工作良好。

但是有什么方法可以只使用c++自动测试这个吗?我的意思是给定一个类型,比如int我的工具生成了一个调用serialize_int

您可以尝试使用CATCH或任何其他测试框架(boost, googletest,寻找其他)。当然,您必须编写测试用例。