Как мне выполнить поиск и структурную замену в Intellij
-
03-07-2019 - |
Вопрос
Я переношу свои тесты Junit с Junit v3 на Junit v4.
Я надеялся использовать поиск и структурно заменить "srs", чтобы добавить аннотацию @Test перед всеми методами, начинающимися с test. * используя мою любимую IDE Intellij.
Я просто не могу понять, как это сделать...Я могу создать запрос, который найдет все методы без аннотации (есть пример, связанный в Intellij), но при использовании для выполнения замены либо мой класс заменяется только именами методов, ЛИБО ничего не найдено.
Может быть, регулярное выражение проще :-)
/Konstantin
Решение
На данный момент это невозможно, но есть запросы на замену членов класса.
Вот полезная ссылка для начала работы с ssr: https://www.jetbrains.com/idea/docs/ssr.pdf
Другие советы
Я пробовал со следующим SSR, но у меня та же проблема, что и у вас :
Шаблон поиска :
public class $TestCase$ extends $TestCaseClazz$ {
public void $testMethod$();
}
Шаблон для замены :
@Test public void $testMethod$();
И я проверяю "Эта переменная является целью поиска" в TestMethod.Предварительный просмотр кажется нормальным, но IntelliJ фактически удаляет весь метод целиком :(
Откройте Поиск -> Заменить в path
Установите Directory в качестве каталога, в который помещен ваш тест
Установите строку поиска в:публичный тест на недействительность.
Установите значение replace string в:@Test
\публичный недействительный тест.
Установите флажок Регулярное выражение.
Наслаждайся.