如何测试我的npapi代码,即xpcom到我的firefox插件的npruntime更改?

时间:2011-03-08 05:18:01

标签: firefox plugins npapi npruntime

我已经更新了我的firefox插件,可以通过从xpcom移动到npruntime来使用最新版本的firefox(3.6及更高版本)。

在执行此操作时,我已经写了几个包装器,测试我的代码的唯一方法似乎是通过javascript。

有人可以建议另一种方法来测试我的辅助对象吗?是否还有其他类型的测试可用于此处?

1 个答案:

答案 0 :(得分:2)

我会在回答你的另一个问题时重复我给你的建议,建议你考虑使用FireBreath来获取这个插件;它已经有了使NPObjects运行良好的包装器,并且作为Windows上的额外奖励,你也可以在IE上使用你的插件。

也就是说,编写NPAPI插件的单元测试相当困难。根据代码的编写方式,您可以“伪造”一些重要的函数 - 例如内存管理函数NPN_MemAlloc和NPN_MemFree - 然后使用它们来编写单元测试,或者您可以编写使用网络浏览器。

FireBreath包含一个NPAPIHost项目,旨在帮助对NPAPI插件进行单元测试,但尚未完全完成。如果你愿意,你可以用它作为起点。

老实说,我只会使用FireBreath,然后您可以专注于自己的代码,而不是尝试编写和维护自己的脚本系统抽象。