Используйте getActiveWorkbenchWindow
в HandlerUtil
:
public class MyHandler extends AbstractHandler {
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
IWorkbenchPage workbenchPage = HandlerUtil.getActiveWorkbenchWindow(event).getActivePage();
workbenchPage.showView("MyView");
}
}
Лучший метод, о котором я услышал для поблочного тестирования с элементами GUI, является Скромным Диалоговым шаблоном/методом. В сущности Формы являются просто интерфейсом, и вся реальная работа сделана в других классах. Вы модульный тест классы, которые обеспечивают функциональность и затем просто связывают Ваши события GUI с соответствующими методами в тех классах.
Моя текущая мысль - то, что мне, вероятно, придется использовать состав, а не наследование с классом Формы, для отделения контроллеров от него.
Это имеет недостаток, что каждый раз я должен использовать члена класса Формы, который я не запланировал, я должен добавить его явно к моему интерфейсу представления.