重置工作台时swtbot失败

时间:2012-09-10 13:28:01

标签: java eclipse swt eclipse-rcp swtbot

我有这样的测试

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,则测试通过...
这有什么不对?

1 个答案:

答案 0 :(得分:0)

在我看来,这是一个依赖问题。您是否在测试清单中包含org.hamcrest了吗? 如果是这样,请查看org.hamcrest捆绑包。作为一个猜测,那里的'org.hamcrest.Matchers'类失踪了。 根据您选择的hamcrest的分布,此类可能会丢失(故意)。 Afaik hamcrest-core-xy.jar中缺少它。 您可以尝试将Hamcrest additional library of matchers添加到目标和清单中。 如果这个工作,我建议用this作为基础烘烤你自己的hamcrest-all捆绑(我没有找到一个hamcrest-all作为捆绑下载)。