0

こんな試験があります

public class TesteSairApp extends GermantechTest {

    @Test
    public void testApp() throws Exception {
        SWTBotMenu file = bot.menu("Arquivo");
        bot.sleep(1000);

        SWTBotMenu clickSair = file.menu("Sair");
        bot.sleep(1000);

        SWTBotMenu menuClicado = clickSair.click();
        System.out.println(menuClicado);
        bot.sleep(1000);

        pass();
    }

アプリを終了するだけです。
アプリが終了した後、次の例外が発生しました。
java.lang.NoClassDefFoundError: org/hamcrest/Matchers at org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot.editors(SWTWorkbenchBot.java:222) at ...

bot.resetWorkbench();から@Afterを削除するGermantehcTestと、テストはパスします...
ここで何が問題なのですか?

4

1 に答える 1

0

依存関係の問題のように見えます。テストのマニフェストに含めorg.hamcrestましたか? もしそうなら、org.hamcrestバンドルを見てください。推測として、クラス「org.hamcrest.Matchers」がそこにありません。選択した hamcrest の分布によっては、このクラスが (意図的に) 欠落している可能性があります。Afaik にはありませんhamcrest-core-xy.jarマッチャーの Hamcrest 追加ライブラリをターゲットとマニフェストに追加してみてください。これが機能する場合は、これをベースとして使用して、hamcrest-all の独自のバンドルを作成することをお勧めします(ダウンロードとしてのバンドルとして hamcrest-all が見つかりませんでした)。

于 2012-09-20T06:51:40.947 に答える