2011-01-27 2 views
0

SWTライブラリの拡張機能で単体テストを実行しようとしています。私はウィジェットをデザインするために拡張しているクラスを効果的に模倣してスタブする方法を理解するのに問題があります。単体テストのサードパーティ製ライブラリのスタブクラスの生成

私が考えている最良の解決策は、実際のSWTライブラリの上にロードされるように、テストソースのSWTクラスを再定義することです。それから私はスタブメソッドを必要なものにする能力を持っています。

このメソッドで唯一問題となっているのは、Control.javaのようなクラスファイルが8K行以上あり、各メソッドをスタブしたいので、効率的な方法でコードにアクセスしようとしていません。根底にあるOSのGUI API私は、これらのコード行を使いたくない。

私はひどく間違っている何かである必要があります、助けてください!

答えて

1

モッキングフレームワークを使用していますか?

私はeasymockを使って部分的な模擬を試してみることをお勧めします(オブジェクト内の単一のメソッドまたはメソッドを置き換えるだけです)。静的/最終メソッドをテストするためのPowerMockと、ハードコアテストのためのJMockitもあります。

私はあなたの質問に答えたと思います。

+0

私が部分的な嘲笑をした場合、実装のインポートに含まれるCanvasクラスではなく、部分的に嘲笑されたオブジェクトを読み込むために、コードNewCanvasによって拡張されたCanvasクラスがどうなると思いますか? –