2013-06-02 52 views
1

我已经在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

+0

是否有可能展开你想要完成的工作?你的问题并不完全清楚。 –

+0

我想以编程方式测试给定一个类,我的代码生成器正在生成预期的输出。 – Avinash

+0

我正在处理类似的代码生成器。而不是支持int,它可以是不同的大小,我支持int8_t,int16_t等等。 –

回答

0

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