单元测试C ++ v8插件

Str*_*tch 5 unit-testing v8 node.js

我们正在为node.js编写v8插件。

插件(您可能知道)是C ++ dll。

我们如何对此进行单元测试?

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

有谁能成功为其附件dll成功编写C ++单元测试?

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

如果您已经成功地对v8插件使用了C ++单元测试,请问您能详细说明实现它的最佳方法以及需要注意的事项吗?

问候,舒展

elj*_*efe 0

我也在想这个问题。但是,除非您确实有很多 cpp 逻辑,否则只需编写 cpp-js 组合并对 js 实现进行单元测试就可以了,正如可以在 -library 中观察到Nan那样。逻辑较少意味着,最好情况下的 cpp 实现无论如何只是 API 胶水。

当您确实有自定义逻辑并编写Nan@2样式类(因此,简单的 cpp)时,您当然可以像常规 cpp 一样通过包含它的标头来测试它并执行一些操作...

void testEquality()
{
  CPPUNIT_ASSERT( /* some test*/ );
}
Run Code Online (Sandbox Code Playgroud)