groovyプラグインを使用するEclipseで、テストを起動しようとしました@Test public void testToLaunch() {...}
が、エラーが発生しました:
起動構成の入力タイプが存在しません
input type
起動構成のコンテキストには何がありますか?(起動構成ウィンドウでそのようなエントリが見つかりません)
注:私はsts2.8.1とe3.7を試します
これは、Groovyクラスに問題がある場合にも発生する可能性があります。チェックするいくつかのこと:
1)クラス名がファイル名と完全に一致することを確認します(filename = MyTest.groovy
)
package com.mypackage;
import groovy.util.GroovyTestCase;
class MyTest extends GroovyTestCase {}
2)ファイルで定義されているパッケージが、ファイルが実際に含まれているパッケージと一致していることを確認します。
これは通常、テストケースが存在するフォルダーがソースフォルダーではない場合に発生します。この投稿も確認してください。お役に立てば幸いです。
これは私に起こりました、そして私はちょうどEclipse(GGTS)を再起動しました、そしてすべては再び大丈夫でした。
スペルミスがあり、そのエラーメッセージが表示されました。私のテストクラスファイル名はJUnit5Test.java
(upper U
)という名前で、クラス自体はJunit5Test
(lower u
)という名前でした。
Spring Tool Suite 4(4.8.0.RELEASE)を使用していました。
これは私にも起こりました。しかし、これらのテストはGroovyで書かれています。私が遭遇した問題は、IDE(Eclipse Kepler、Java EE)が「mvneclipse:eclipse」を実行した後に最初にGroovyプロジェクトを開く方法に関係しています。
ビルドパスはGroovyソースファイルを正しく参照していません。
解決するために、私は:
これが誰かの時間を節約することを願っています。
乾杯!
メインのJavaソースフォルダーとtestsrcフォルダーの両方で複製されたtest-classの先頭に立つと、同じエラーメッセージが表示されました。メインのJavaソースフォルダに誤って配置されたものを削除すると、問題が解決しました。
2019アップデート:これは、最新のEclipseと新規インストール(Mac、Grails 4、Gradle 5.1.1、Java 8)を使用しても、何日も夢中になりました。上記のいくつかの例は私を解決策に導きました。
私の問題は、私がテストしていたコードにgroovyとjava src/mainコードが混在していることでした。SpecをJUnitとして実行すると、.groovyクラスでNoClassDefFoundが得られました。
解決策:ビルド/クラス/グルービー/メインを含めるように実行/デバッグ構成を変更する必要がありました。それからそれは働いた。新しい構成ごとにそれを覚えておくのは少し面倒ですが、それでも私は続けられます。お役に立てば幸いです。
EclipseでJUnitテストを作成するときは常に、JUnitテストファイルが src/test/java
フォルダー内にあることを確認してください。
私も同様の問題を抱えていました。他の人がすでに指摘しているように、それはソースフォルダに関するものでした。ソースフォルダの設定を変更する必要がありました。空のsrc-folderがあり、それを右クリックして、[ビルドパス]メニューから[ビルドパスから削除]を選択すると消えました。その後、java/srcフォルダーとjava/testフォルダーの両方を右クリックし、[ビルドパス]>[ソースフォルダーとして使用]を選択しました。そして突然、私のテストはJUnitedでした!
同様の状況で、ビルドパスからすべてのソースフォルダーを削除し、正しいフォルダーがあることが確実な場合は、それらを再度追加することをお勧めします。ソースフォルダは、その下にJavaパッケージ構造を持つものである必要があります。proj / java / test / com / stackoverflow / mainの場合、これは「test」フォルダーです。
これが私にとって解決したことです(Eclipse Oxygen)
。私はロバートが以前の投稿で提案したことをすでに行っていました。まだエラーが発生していました。junit起動の構成を編集しようとすると、「テストクラス」フィールドにクラス名が付いていることがわかりました。右側の検索ボタンを押す必要がありました。[テストクラス]フィールドに、クラスの完全な名前が付けられました
com.mycompany.mypackage.MyClass
これで私はを実行することができますJUnit
。しかし、私は実行ごとにこれを修正し続ける必要があります。
このメッセージを表示する別の方法を見つけました。MyTest.java
原因は、underの空のコピーと、 undersrc/main/java
の実際のコピーであることが判明しましたsrc/test/java
。
空のファイルはリファクタリングによる二日酔いであり、奇妙なことにコンパイルエラーも発生していなかったと考えてください。これを削除すると、テストを再度実行できるようになりました。