2015-03-03 53 views
3

我们正在为node.js.写一个v8插件。单元测试C++ v8插件

插件(正如你可能知道的)是一个C++的DLL。

我们该如何进行单元测试?

简单的方法是使用node.js脚本从addon dll调用我们的导出函数。但这不是一个真正的单元测试,因为它跨语言。

有没有人成功地为他们的插件DLL编写C++单元测试?

我们已经尝试过了,但却遇到了意想不到的错误 - 我们怀疑这是因为node-gyp库期望在node.exe的上下文中调用所有内容,并且因为我们的单元测试使用了addon dll“standalone”有些东西没有正确设置,导致测试失败。

如果您已经设法使用v8插件的C++单元测试,请详细介绍实现它的最佳方法以及需要注意的事项?

问候, 拉伸

+0

什么相关性你有没有在你的考试中?你能提供一个代码片段吗? – smirnoff 2015-10-13 03:28:01

回答

0

我在想这个。但是,除非你有很多cpp逻辑,否则只需编写cpp-js-combination,并单元测试js-implementation就可以了,如Nan -library,here中可以看到的那样。在这里意味着更少的逻辑意味着最好的情况下的cpp实现无论如何只是API粘合。

如果你拥有了自定义逻辑和写[email protected]风格类(所以,简单CPP),你当然可以测试通过,包括它的头和做一些像普通CPP ...

void testEquality() 
{ 
    CPPUNIT_ASSERT(/* some test*/); 
}