Javaクラスを右クリックし、[新しいJUnitテストケース]を選択して、EclipseでJUnit 4テストを作成しました。テストクラスを右クリックすると、[サーバーで実行]が表示されますが、表示されません。 「JUnitテストとして実行」。Eclipse3.6.1を使用しています。
私の場合、Eclipseは破損した状態になっているはずです。 Eclipseを再起動すると、問題が修正されました。
私は問題を見ていると思います。 Eclipseがファイルをテストケースとして識別する前に、ファイルに実際のテストを含める必要があります。以下を挿入してみてください。
@Test
public void foo() {
}
クラスにJUnit特性があることを確認してください(TestCase
から拡張するか、@Test
などを使用します)。
「RunAs」->「RunConciguration」->「CreateJUnittest」を左アイコン「JUnit」から右クリックします。
テストクラスの有効なデフォルトコンストラクターがあることを確認してください。
junit5の場合、ビルドパスとプロジェクトファセットにjdk8が必要です。
私の場合、問題は異なっていました。 TestNGテストをJUnitに変換していました。 @TestアノテーションはTestNGインポートによって満たされましたが、それは間違ったアノテーションでした。 TestNGインポートを削除し、@ TestのJUnitインポートを追加すると、JUnitテストとして実行するための右クリックメニューオプションが表示されました。
Mavenプロジェクトで発生した場合は、以下をpom.xmlに追加し、Alt + F5を使用してプロジェクトをリロードします。古いJDKバージョンのため、テストは機能しません。
<properties>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
以前も同様の問題がありましたが、宣言の「ClassToBeTestedSpec」の後に「extendsSpecification」を忘れたことが原因でした。
この状況を解決するには、私の場合、Eclipseを再起動するだけでは不十分でした。プロジェクトを削除して、ワークスペースに再度追加する必要がありました。
import org.junit.Test;を含め、テストの前に@ Testがあることを確認してください。他のファイルからいくつかの関数をコピーするときに、以前はそれを見逃していました。
既存のプロジェクトをKeplerベースのEclipse IDE for Java Developersバージョンにインポートすると、これらの症状が発生しました。
プロジェクトをLunaベースのEclipse IDE for Java EE Developersにインポートすると、正しく設定され、Javaプロジェクト(プロジェクトアイコンにその小さな[〜#〜] j [〜#〜]が含まれるようになりました)、JUnitテストの実行が可能になりました。
私の場合、Javaビルドパス(.classpath
file)が壊れていました。特に、未解決のマージ競合がありました。したがって、JUnit4ライブラリーがありませんでした。