SWTBotを使用して Extract Method リファクタリングをテストする GUI テストを作成しました。メソッドに抽出するステートメントを選択するために使用します。しかし、単体テストを実行すると、Extract Method リファクタリング メニュー項目が無効になります。したがって、SWTBot はリファクタリングの呼び出しに失敗します。editor.selectRange()
「Extract Method...」メニュー項目が常に有効になるように変更org.eclipse.jdt.ui.actions.ExtractMethodAction
すると、SWTBot がパスします。しかし、SWTBot は、org.eclipse.jdt.ui
プラグインをハッキングすることなく、メニュー項目を選択できるようにする必要があります。
上記の単体テストを含むプロジェクト全体はgithub で入手できます。SWTBotおよびSWTBot バグ追跡システムの Eclipse フォーラムでもこの問題を報告しました。しかし、フォーラムから解決策を受け取っていません。