問題タブ [jemmy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1375 参照

java - JemmyFX を使用して複数の JavaFX コンポーネントをテストする

カスタムJavaFXコンポーネントのセットを含むかなり大きなプロジェクトに取り組んでいます。再利用するカスタム コンポーネントごとに、JemmyFX と JUnit を使用して一連の自動テストを作成し始めました。開発中は、これらを Eclipse Juno 内から実行します。

テスト スイート全体を一度に実行するのは難しいことがわかっています。この問題は、複数のコンポーネントをテストしたいので、理想的にはそれぞれに異なるアプリケーションを実行するという事実に起因しているようです (1 つのコンポーネントで実行されたテストが他のテストに影響を与えないようにするため)。

次のことを行う基本クラスを作成しました。

@Testこの基本クラスを使用して、各カスタム コントロールのテストを含む個別のクラスを作成しました。このテスト スイートを実行すると、最初のテスト ケースは正常に実行されますが、残りは失敗します。

この問題に対処するために、次の方法を試しました。

アプリケーションをシャットダウンします

基本クラスに以下を追加しました。

同じ問題が続きます。おそらく、VM がテスト間で再起動されていないためでしょうか?

アプリケーションの再起動を防ぐ

おそらくアプリケーションがすでに実行されているかどうかを確認するために、静的変数を入れました。これにより、Eclipse からテストを実行すると問題が解消されます。コマンドラインから実行しても問題は解決しません。これらのテストを統合サーバーで実行しようとする場合には適していません。

IllegalStateException をキャッチする

これは奇妙なものです。例外をキャッチすることができ、Ubuntu のテスト スイート全体を 4 ~ 5 回実行するたびにシェルがクラッシュし、再度ログインする必要があるという事実を除いて、ほとんどの問題は解決しました。

では、大規模なカスタム コントロール スイートのテストを作成するにはどうすればよいでしょうか。私のアプローチは間違っていますか?

0 投票する
1 に答える
65 参照

java - イベントモードの JemmmyFX

JavaFx アプリケーションのテストに JemmyFx を使用したいと考えています。Jemmyv2 では、Jemmy をイベント モードまたはロボット モードで起動できました。ただし、Jemmy3ではロボットモードしか利用できないようです。

ソース コード、特に JemmyAWTInput のソース コードを調べてみたところ、AWTRObotFactory などのロボット関連のクラスしか見つかりませんでした。

JemmyFX をイベント モード、つまり非ロボット モードで起動できるかどうかは誰にもわかりません。

0 投票する
1 に答える
2253 参照

java - Jemmy v2 の使用方法

Java Swing のユーザー インターフェイスをテストする方法を学び、Jemmy v2 を試してみたいと思っています。http://jemmy.java.net/tutorial.htmlの指示に従おうとすると、問題が発生しました。現在、次のクラスのみで構成される新しいプロジェクトを作成しました。これにより、テストしたいアプリケーションを開始し、このアプリケーションへの参照を作成します。残念ながら、テストしたいアプリケーションがアクティブになるとすぐに「java.lang.ClassCastException」例外がスローされるため、根本的に間違っているようです。

私が得る例外:

sut2.TicTacToe は、ActionListener を実装するクラスですが、JFrame を拡張しません (別のさらに単純な Java プログラムを試してみましたが、同じ結果が得られました)。このクラス内で JFrame オブジェクトが作成され、GUI コンポーネントを含むパネルが追加されます。

私が間違っていることと、Jemmy v2 を適切にセットアップする方法を教えてください。

0 投票する
1 に答える
100 参照

gui-testing - エントリ ポイントなし (メイン クラスなし) でプロジェクト用に自動化された GUI テスト ケースを作成できますか?

私は、エントリポイントを持つ必要がないプロジェクトに取り組んでいます(メインクラスなし)。FEST または Jemmy (NetBeans IDE を使用) を使用していくつかの GUI テスト ケースを実装することを考えていました。エントリ ポイントなしで GUI テストを自動化することは可能ですか?

0 投票する
3 に答える
3567 参照

java - jemmy を使用した Java Web Start アプリケーションのテスト

Jemmy を使用していくつかの gui テストを作成する必要がありますが、javaws アプリケーションで起動する方法がわかりません。チュートリアル/例/などでは、次のようなものです:

このコードはサンプル ウィンドウを開きますが、ClassReference オブジェクトを使用して*.jnlpファイルを開くにはどうすればよいでしょうか? それとも、ジェミーをJava Web Startアプリケーションに「接続」する別の方法ですか?

よろしくお願いします。

0 投票する
0 に答える
128 参照

javafx - Jython から JemmyFX を使用するには?

Jython への移植を試みて、Jython から JemmyFX を使用する可能性を探っていtests/bigapps/EnsembleTestます。しかし、私は障害に遭遇しました。この Java コードを置き換えることができると期待しています。

この Jython コードを使用すると、次のようになります。

ただし、私が提供した Jython コードでは、TextFieldコントロールの検索はorg.jemmy.TimeoutExperiedException.

この特定のインスタンスを回避するには、ソースを Ensemble デモに変更して ID を指定しTextField、ID で検索しTextFieldます。ただし、数行後に a を検索するとまったく同じ問題が発生します。ContextMenuこの場合、ContextMenuID を指定しても機能しません。

0 投票する
1 に答える
50 参照

java - プログレスバー付きの通知ダイアログが表示されているときに、ジェミーは clickMouse() で攻撃されました

自動テストの実行中 ( Java GUI 要素と対話するために lib が使用されます)、アドレス データが入力され、[アドレスの検索] ボタンが押されます。一部のアドレスでは、プログレスバー付きの通知ダイアログが表示されます。

別のタイムアウトを設定しようとしましたが、テストが実行されたことを特定するのに役立ちません(タイムアウトが期限切れになりました)searchByAddressButton.clickMouse();

この質問は、SQA.stackexchange.com の「プログレスバー付きの通知ダイアログが表示されているときに、ジェミーが clickMouse() で打たれた」のコピーです。完全な情報については、それを確認してください。