すべてのjunitテストを「移動」リファクタリングすると、古い場所に置かれるようです。多くの場合、「パッケージ」の可視クラスをテストするため、SUT が別のパッケージに移動すると、それらは非可視になります。
テストを手動で移動しますか?
すべてのjunitテストを「移動」リファクタリングすると、古い場所に置かれるようです。多くの場合、「パッケージ」の可視クラスをテストするため、SUT が別のパッケージに移動すると、それらは非可視になります。
テストを手動で移動しますか?
4 つのオプションがあります。
左側の [パッケージ] ビューに移動し、両方のファイルを選択して、F6 を押します。両方を適切な場所に移動する必要があります。
リファクタリングを行う前にクラスを一時的に公開し、後で元に戻します。
最初にテストを動かしてみてください。依存関係を壊さないようにすることを覚えているようです。
Move Refactor にパッチを適用してテストも実行するプラグイン ( toggleTestまたはunitTestだと思います。両方をインストールしました) があります。うまくいきました。残念ながら、これらは最新の IDEA では動作しない可能性があります。
あなたが説明する行動は完全に正常です。
src/package1/A.java
test/package1/ATest.java
あなたATest.java
にはimport package1.A;
.
リファクタリングすると、次のようになります。
src/package2/A.java
test/package1/ATest.java
テストコードはそのままでした。テスト コードを移動したのではなく、ソース コードを移動しました。他のフォルダーには影響しません(例のように)。
の参照は であるATest.java
必要がありますimport package2.A;
。そうしないと、リファクタリングがうまくいきませんでした。
それにもかかわらず、別のディレクトリにある場合でも、テストは機能するはずです。これは、リファクタリング方法によってインポートが変更されたためです。
フォルダー構造をクリーンアップしたい場合は、パッケージの名前を手動で変更する必要があります(パッケージtest/package1
がtest/package2
そうであることはわかっていますが、フォルダー構造への焦点を強化したい.package1
package2
お役に立てれば幸いです。