我正在上使用SWT构建我的Eclipse应用程序,JUnit测试案例。我使用了SWTBot做GUI测试。所以,这里是我的问题:

editor.bot().button("Make Excel Template").click();

此代码可以帮助我产生在我的应用程序的模板。一旦这样做,它作为一个消息“OK”抛出了一个模式对话框。但是,我不能得到了SWTBot找到这个按钮/插件/对话框。我不断收到一个 'WidgetNotFoundException'。

已经有人遇到过这个?该网站了SWTBot官方的内容说,对话框应在单独的非UI线程中运行。然而提供的实施例,也不是很丰富。

感谢您的帮助!

有帮助吗?

解决方案 2

@carstenlez - 您的解决方案非常适用于JFace的对话框。我的应用程序,但是,利用一个消息 - 这是一个本地对话框。了SWTBot不支持原生的对话,所以我几乎跳出选项。

其他提示

首先,你应该在非UI线程运行测试(如果尚未这样做)。 其次,你可以使用条件等待执行的行动,将带来高达对话框出现后您的模态对话框:

bot.waitUntil(Conditions.shellIsActive("This is the title of the modal dialog "));
bot.button("OK").click();

此解决我们的定时问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top