SWTBot - 等待MessageBox

时间:2014-07-24 07:30:10

标签: java shell swt messagebox swtbot

我目前正在编写SWTBot测试,我遇到了一个问题,我需要等到操作完成后,Info-MessageBox会告诉我完成情况。

这就是我目前尝试这样做的方式:

   public void generateCode() {
      SWTBotTree projectExplorerTree = bot.viewByTitle("Project Explorer").bot().tree();
      projectExplorerTree.getTreeItem(name).contextMenu("Generate Code").click();

      bot.waitUntil(Conditions.shellIsActive("Info"), 20000);
      bot.button(IDialogConstants.OK_LABEL).click();
   }

这是我正在等待的消息框:

enter image description here

但是我得到以下异常,因为SWTBot无法识别消息框:

org.eclipse.swtbot.swt.finder.widgets.TimeoutException: Timeout after: 20000 ms.: The shell 'Info' did not activate
    at org.eclipse.swtbot.swt.finder.SWTBotFactory.waitUntil(SWTBotFactory.java:412)
    at org.eclipse.swtbot.swt.finder.SWTBotFactory.waitUntil(SWTBotFactory.java:386)

任何有问题解决方案的人?谢谢!

1 个答案:

答案 0 :(得分:0)

好的,由于某种原因,消息框是由本机代码创建的,这就是为什么SWTBot无法找到它!