私はSpockを使用して統合テストフレームワークを導入するSpringベースのWebプロジェクト(EclipseはIDE)に取り組んでいます。このプロジェクトはMavenに基づいています。この目的のために、私はGreclipseプラグインをインストールして、既存のプロジェクトをグルーヴィーな性質に変換しました。また、src/test/groovyフォルダ内のテストクラスを実行するようにMavenを設定しました。すべて正常に動作し、すべてのSpockテストは "Mavenテスト"フェーズで正常に動作しています。 Groovyテストファイルをターゲット/テストクラスにコンパイルするビルドパスを設定しました。Eclipse IDEを使用しているSpring MVCプロジェクトでSpockスクリプトが自動的にコンパイルされない
実行 - >実行構成を使用してSpockテストを実行すると問題が発生します。実行コンフィギュレーションを使用してJunitランナーとファイルを実行し、ターゲット/テストクラスからコンパイルされたテストクラスを取得します。 Spockテストスクリプトファイルを変更すると、自動的にクラスが生成されるわけではありません。Run Configuration with Run Configurationは、常に古いコンパイルされたクラスを取得します。
強制的にスクリプトをコンパイルするので、コンパイルと実行を強制するために、MavenのクリーンアップとMavenテストを必ずしも行う必要はありません。
Groovyコンパイラのオプションを "スクリプトフォルダのサポートを有効にする"ように変更していることを、他のいくつかのスレッドで見てきました。チェックとアンチェックの両方が役に立たなくなっています。 Spockスクリプトを強制的にコンパイルしないようにしました(Eclipse環境設定のGroovyコンパイラオプションで同じオプションを有効にしようとしました)
助けてください。
返信いただきありがとうございます。ビルドは自動的にプロジェクト上で実行するように設定されています。また、src/test/groovy/folderがProject Propertiesのソースパスに追加されます。しかし、それでも私はコンパイルされたクラスファイルを見ていません。まだ欠けているものはありますか? – user1260377
問題を見つけて修正しました。私が参照しているプロジェクトでは、.proejctファイルにJavabuilderの設定がありません。 Mavenを使用してビルドを行っていたので、私はそれをキャッチできませんでした。 Javabuilderを追加すると、eclipseはファイルを変更するたびにコンパイルすることができました。 – user1260377