いくつかのアクションを含むツールバーを持つ ViewPart を持つ RCP アプリケーションがあります。これらのアクションは、アイコンとツールチップを備えた単純なボタンとして、システムによってツールバーに配置されます。
アクションは次のようになります。
public class MyAction extends Action {
public static final String TITLE = "My Action Tooltip";
public MyAction() {
super(TITLE, Activator.getImageDescriptor("icons/clock_edit.png"));
setToolTipText(TITLE);
}
// ...
}
今、私は次のように、SWTBot でそれらのボタン クリックを呼び出そうとしています:
SWTBotButton myButton = bot.buttonWithTooltip(MyAction.TITLE);
myButton.click();
SWTBot テストを実行すると、ボタンが見つからないというエラー メッセージが表示されます。
org.eclipse.swtbot.swt.finder.exceptions.WidgetNotFoundException: Could not find widget matching: (of type 'Button' and with tooltip 'My Action Tooltip' and with style 'SWT.PUSH')
at org.eclipse.swtbot.swt.finder.SWTBotFactory.waitUntilWidgetAppears(SWTBotFactory.java:362)
at org.eclipse.swtbot.swt.finder.SWTBotFactory.widget(SWTBotFactory.java:309)
at org.eclipse.swtbot.swt.finder.SWTBot.buttonWithTooltip(SWTBot.java:205)
at org.eclipse.swtbot.swt.finder.SWTBot.buttonWithTooltip(SWTBot.java:193)
今私が疑問に思っているのは、アクションが SWT.PUSH ボタンとしてツールバーに配置されていないということですか? または、それが見つからない理由は何でしょうか?