問題タブ [testfx]
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.
maven - UnsatisfiedLinkError:ネイティブ ライブラリ jdk1.8.0_121\jre\bin\glass.dll が別のクラスローダーに既にロードされている
私はmavenとintellijを使用するプロジェクトを持っています。TestFX、Mocito、PowerMock を使用してテスト関数を作成しますが、テストを 1 つずつ実行すると、すべてのテストに合格します。しかし、すべてのテストを実行し始めると、この例外が発生します。検索して System.loadLibrary("glass") を追加しても機能しませんでした。いくつかの解決策を試しましたが、解決できませんでした。何が問題なのか知っている人はいますか?
linkte を作成し、他の解決策を試しましたが、glass.dll が見つからないというエラーを解決できませんでした。この問題の長期にわたる解決策を探しています。
https://maven.apache.org/surefire/maven-surefire-plugin/examples/class-loading.html
java - JavaFX 要素を使用する Travis でテストを実行するには?
パラメータとして JavaFX 要素、たとえばProgressIndicator
.
しかしnew ProgressIndicator()
、テストメソッドで a を作成すると、(Gradle を使用して) テストを実行すると、その行で a で失敗します
質問: ローカルと Travis の両方のテストで JavaFX 要素をインスタンス化するにはどうすればよいですか?
ProgressIndicator を使用しないテストが成功することを確認しました。
関連情報
- Toolkit が初期化されていない Java FXは、FX Toolkit が launch() で開始する前に FX コントロールを作成しようとするとこのエラーが生成されることを明確にしていますが、それから解決策を見つけることができませんでした。テストから launch() を呼び出す必要がありますか?
- JavaFX 2.1: 初期化されていない Toolkitにエラーが含まれているようですが、CI のテストに関するものではありません。1 つの解決策には が含まれ、
CountDownLatch
もう 1 つの解決策には同様にテストへの追加が含まcom.sun.javafx.application.PlatformImpl.startup(()->{});
れますが、これは問題をローカルで解決するだけで、 が生成されjava.lang.UnsupportedOperationException
ます。
私のテスト:
私の JavaFX クラス:
関連するかどうかはわかりませんが、ビルドファイルでGradleを使用しています:
スタックトレース:
完全なサンプル リポジトリはこちらです。
intellij-idea - TestFX - ボタンがクリックされたときにシーンが開くかどうかのテスト (JavaFX - IntelliJ)
IntelliJ 内で Java FX アプリケーションをテストしようとしていますが、TestFX を使用していますが、インターフェイスのボタンがクリックされたときにウィンドウが開くかどうかをテストする方法がわかりません。プライマリ ステージを取得するゲッターを作成してから、これが開くことを True にアサートしようとしましたが、これはとにかくボタン クリックで表示されるステージではありません。
アドバイス/ヘルプはありますか?
ありがとう。