4

Eclipse ベースの RCP を開発しています。最近、Eclipse Juno に更新し、現在は品質に重点を置いています。もちろん、アプリケーションが非常に大きく、テスト作業のためにリリースが遅れているため、自動テストに重点が置かれています。

私たちはすでに JUnit テストを書いていますが、UI テストにもっと興味があります。古い Eclipse では、これは問題になりません。優れたテスト フレームワークはたくさんあります。残念ながら、Juno では、Swing または JavaFX によってデフォルトの SWT UI を切り替える機能が追加されたため、すべてが変更されました (少なくとも、これは問題を引き起こす変更について私が理解していることです)。

そのため、ほとんどのテスト ツールは適切に機能しなくなりました。過去の経験から、次のように思われます。

  • SWTBotは最近あまり人気がないようで、非常に不安定です (特定のバージョンでは要素が見つかりません)
  • Window Testerは非常に優れているように見えますが、テストの実行中に要素を識別するのに多くの問題があります (特に、コンテンツ アシストやツール ヒントなどのポップアップで)。
  • どうやらFroglogics Squishは Juno をサポートしているようですが、ライセンスは約 2,5k ユーロかかるため、パスする必要があります。
  • 同じことがQF-Testにも当てはまるようです(高すぎる)。
  • これにより、過去に試したJubula (または商用の Jubula である GUIDancer) が残りますが、Window Tester や SWTBot と同様の問題がありました (Eclipse プラットフォームへの変更といくつかの要素を検出するのが難しいという点で不安定です)。

どのツールに焦点を合わせて信頼するかを知る必要があります。ツールのいずれかを使用した経験がある人、または現在Juno RCP(またはJuno自体)をテストしている人はいますか?または、Eclipse が独自のプラットフォームをテストする方法を知っている人はいますか?

「test」「Juno」「UI/GUI」で検索すると、市販品しか出てきません。

私にとって重要なことは、将来のリリースでも開発されたテストケースを使用できるツールを見つけることです。つまり、コミュニティのサポートがあり、迅速に適応できるフレームワークプロジェクトです。また、ツールチップ、オーバーレイ、コンテンツのアシスト/提案なども見つけることが重要です) - 基本的な HTMLUnit と比較した Selenium に似ています。

この時点では、統合、レポート、または標準への準拠についてはあまり気にしません..

4

2 に答える 2

4

Eclipse Wiki で GUI テスト ツールの包括的な表を見つけることができます: http://wiki.eclipse.org/Automated_Testing#UI_tests

マウスを使用してテストを記録/作成する場合 (Jubula、QFTest など)、テスト コードを手書きできるようにしたい場合 (SWTBot など) を決定する必要があります。 )、または両方を実行できるようにしたい場合(WindowTester Proなど)。

Eclipse Juno はかなり新しく、リストされているすべてのツールで問題が発生することが予想されますが、これらのツールのほとんどは主に SWT ウィジェットのテストに重点を置いており、Juno はまだ SWT を使用しているため、移行にはそれほど時間がかかりません。これまでのところ、技術的なデモ以外で JavaFX を真剣に使用している RCP アプリケーションについて聞いたことがありませんが、ぜひ見てみたいです!

私が考える問題は、Eclipse のテストが難しく、GUI のテストが特に難しいことです。主な問題を見つけて説明しているこの調査をご覧になることをお勧めします: http://swerl.tudelft.nl/twiki/pub/Main/TechnicalReports/TUD-SERG-2011-010.pdf

この調査結果を信じるなら、通常は GUI テストよりも JUnit テストの方が望ましいと言えます。Juno を使用すると、フレームワークが継承とシングルトンから依存性注入に切り替わったため、Eclipse の単体テストが以前よりも簡単になるという大きな利点が得られます。これにより、はるかにテストしやすくなります。

于 2012-10-16T20:44:24.530 に答える
1

Eclipse DLTK、Eclipse LDT、Eclipse Tigerstripe などの一部の Eclipse プロジェクトの GUI テストに使用されているXored の Q7もご覧になることをお勧めします。ツールは完璧です。エンジニアごとに 1 日あたり数十の UI テストを開発できます。 、安定性と誤った記録の問題はありません。これは特別に設計されており、Eclipse ベースのアプリをテストするためだけに設計されており、明らかにニッチで最高のものです。

ただし、お金がかかるため、(スキッシュのように) ブロッカーになる可能性がありますが、ほとんどのユースケースには十分な無料のコミュニティ バージョンがあります。Xored の連中と同様に、テスト実行ごとに支払う価格モデルを導入しました。ツールは無料で、毎月実行されるテストごとにのみ料金を支払う必要があります (5000 未満は無料です)。新しいモデルの詳細については、eclipse-testing.comをご覧ください。

于 2012-11-01T11:24:16.803 に答える