xpcom から npruntime に移行して、最新バージョンの firefox (3.6 以降) で動作するように firefox プラグインを更新しました。
これを行っている間、私はいくつかのラッパーを作成しましたが、コードをテストする唯一の方法は JavaScript を使用することです。
誰かが私のヘルパー オブジェクトをテストする別の方法を提案できますか? ここで役立つ他の種類のテストはありますか?
このプラグインにFireBreathを使用することを検討することを提案することで、他の質問への回答で提供したアドバイスを繰り返します。NPObjects を適切に機能させるためのラッパーが既にあり、Windows の追加ボーナスとして、プラグインを IE でも使用できます。
とはいえ、NPAPI プラグインの単体テストを作成するのはかなり困難です。コードの書き方によっては、メモリ管理関数 NPN_MemAlloc や NPN_MemFree などのいくつかの重要な関数を「偽装」し、それらを使用して単体テストを作成するか、ウェブブラウザ。
FireBreath には、NPAPI プラグインの単体テストを支援するために設計されたNPAPIHostプロジェクトが含まれていますが、完全には完成していません。それでも、必要に応じて開始点として使用できます。
正直なところ、私は FireBreath を使用するだけで、スクリプト システムの独自の抽象化を作成して維持する代わりに、独自のコードに集中できます。