我目前正在编写SWTBot测试,我遇到了这样的问题:我需要等待操作完成,并且informs会通知我完成该操作。
我现在就是这样做的:
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();
}这是我正在等待的消息框:

但是,当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)有人能解决我的问题吗?谢谢!
发布于 2014-07-24 12:40:53
好吧,由于某种原因,消息框是由本地代码创建的,这就是为什么SWTBot找不到它的原因!
https://stackoverflow.com/questions/24927587
复制相似问题