web-dev-qa-db-ja.com

JUnit4 + Eclipse「起動中に内部エラーが発生しました」

Eclipse 3.4.2でJUnit4テストケースを実行しようとしていますが、まだ開始されていません。ビルドパスとテストアプリケーションにjunit-4.7.jarがあります。

これが私の問題を説明する簡単な例です

package test;
import org.junit.Before;
import org.junit.Test;

public class UTest {    
    @Test
    public void test() {
    }

    @Before
    public void setUp() throws Exception {
    }
}

これはうまくコンパイルされます

次に、Eclipseから「RunJUnit Test case」を実行すると、このメッセージを含むエラーダイアログが表示されます。

"Launching UTest' has encountered a problem
An internal error occurred during: "Launching UTest".
Java.lang.NullPointerException

これらのNullPointerExceptionsの原因は何ですか?私は何が間違っているのですか?

18
Mike

ワークスペースとEclipseディレクトリを削除して最初からやり直すだけで、これを修正することができました。

3
Mike

すべてを試した後、私にとって何がうまくいったか:

  1. 助けに行く
  2. 新しいソフトウェアをインストールする
  3. 連携:Juno
  4. プログラミング言語(拡張)
  5. インストールJava開発ツール
  6. 再起動

できます :)

32

これは私のために働いた:

  1. テストクラスの別のコピーを作成します(CopyOfUTest.Java)
  2. コピーを実行して、合格することを確認します
  3. [実行]> [構成の実行]に移動します
  4. jUnitの下で、元のクラスとコピーされたクラスの実行構成を見つけます
  5. 右クリックして、元のクラスの構成を削除します
  6. コピーしたクラスの構成の名前を元の構成名に変更します
  7. コピーしたクラスをプロジェクトから削除します

Eclipseでこのエラーは、Android開発キットプラグイン:も使用している場合に発生する可能性があります

"Launching UTest' has encountered a problem
    An internal error occurred during: "Launching UTest".
    Java.lang.NullPointerException

Java ADTプラグインがインストールされ、有効になっているEclipseインスタンスに通常のAndroidプロジェクトをロードしている場合に発生する可能性があります。この状況では、Eclipseは「Android 「プロジェクトファイルが見つかりません。したがって、「NullPointerException」と表示されます。

したがって、これを修正するには、ADTプラグインなしでEclipseを再ダウンロードします。 https://www.Eclipse.org/downloads/

次に、プロジェクトを新しく再インポートします。そして、junitテストは問題なく実行されます。

多くの人々は、謎めいたエラーメッセージのためにEclipseを嫌っています。エラーメッセージが表示されない1950年代のパンチカードの世界に戻ったようなものです。プログラムが停止し、未定義の動作が発生します。

2
Eric Leschinski

ここで与えられた答えはどれも私にはうまくいかなかったので、代わりに InfiniTest をインストールして使用することになりました。この問題はなく、テストも自動的に実行されるので、仕事に集中できます。

Eclipse with Infinitest showing a red "tests failed" status message and the corresponding assertion error in the "Problems" tab

2
Sam

Eclipseエラーログを調べましたか? 「エラーログ」ビューを開くと表示されます。

http://help.Eclipse.org/help32/topic/org.Eclipse.pde.doc.user/guide/tools/views/error_log.htm

2
Stephen C

あなたのコードは私にとってはうまくいきます。

Eclipseバージョン:3.4.1ビルドID:M20080911-1700

.JavaファイルRunAsJUnitTestを右クリックします。これは、問題の原因がコードの問題ではなく、Eclipse構成の問題であることを示しています。

1
OpenSource

私の問題も解決してくれてありがとう。この問題は、古いシミュレーターを削除して新しいシミュレーターを作成したときに始まりました。修正:OPがワークスペースを削除すると言っているように、プロジェクトをその中に保持するようにしてください:)次に、それらをEclipseにインポートして戻します「多くの作業のように聞こえます」? 30分もかからなかった!!!

1
aryaxt

Androidとそれに関連するプラグインを使用している場合、AndroidはJUnit3のみをサポートします。

JUnit3としてTestRunnerを選択することで、問題を解決しました。

私のクラスでは、JUnit4がビルドパス->ライブラリに追加されています。

次に、テストファイルを実行するには、[実行]-> [構成の実行]に移動し、対応するtest.Javaファイルを選択し、それに応じて[Test Runner]を選択します(JUnit 3または4)。

1
Apurva Sharma

同様の問題が発生しましたが、Pythonを使用しています。これは私がそれを解決/回避するためにしたことです:

  1. Eclipseから.projectファイルとプロジェクトを削除しました。
  2. プロジェクトを再作成しました。
  3. すべてが機能していました。

問題は、CDT Builderへの参照がいくつかある.projectファイルにあるようで、新しい.projectファイルにはありませんでした。

0
myked