1

私はEclipse Plugin Development by Example: Beginner's Guideという本に従っており、すべてのは github でホストされています。ただし、SWTBot の例を正常に実行できません。

最初の実行には非常に長い時間がかかりますが、最終的にはすべてのテスト ケースに合格します。ただし、同じコードを 2 回目に実行しようとすると、成功するだけtestUI()で、他の 3 つにはorg.eclipse.swtbot.swt.finder.exceptions.WidgetNotFoundException: The widget was null.

本のどこかにそう書いてある

1 つ (シェル) が現在表示されていない場合、1 つが見つかるか、WidgetNotFoundException がスローされたときにデフォルトのタイムアウト期間 (5 秒) が終了するまで (デフォルトで 500 ミリ秒ごとに) ポーリングします。ケースは通過しますが、2回目は通過しません。

しかし、なぜ最初はうまくいくのか、2回目はうまくいかないのかわかりません。

私はこれを github issueでも報告していますが、これまでのところ誰も応答していません。

4

1 に答える 1

1

テストの実行中にデスクトップに干渉しましたか? これが (!) SWTBot で問題を引き起こす可能性があることがわかりました。また、WidgetNotFound は、このフレームワークを使用しているときに多く見られる例外です。バグが原因である場合もあれば、異常な基になる UI コードが原因である場合もあります。ただし、そのような場合でも再現可能である必要があります。

于 2013-07-31T14:41:05.357 に答える