Как мне найти и заменить структурно в Intellij

Я перевожу свои тесты Junit с Junit v3 на Junit v4.

Я надеялся использовать поиск и заменить структурно "srs", чтобы добавить аннотацию @Test перед всеми методами, начинающимися с test.*, Используя мою любимую среду разработки Intellij.

Я просто не могу понять, как это сделать... Я могу создать запрос, который найдет все методы без аннотации (есть пример, связанный в Intellij), но при использовании для замены любой мой класс заменяется только методом Имена ИЛИ ничего не найдено.

Может быть, регулярное выражение проще:-)

/ Константин

3 ответа

Решение

На данный момент это невозможно, но есть запросы на замену учеников.

Вот полезная ссылка для начала работы с ssr: https://www.jetbrains.com/idea/docs/ssr.pdf

Я пробовал со следующим SSR, но у меня та же проблема, что и у вас:

Шаблон поиска:

public class $TestCase$ extends $TestCaseClazz$ {
  public void $testMethod$();
}

Шаблон замены:

@Test public void $testMethod$();

И я проверяю "Эта переменная является целью поиска" на testMethod. Предварительный просмотр выглядит нормально, но IntelliJ фактически удаляет весь метод:(

Открыть Поиск -> Заменить в пути
Установите каталог в каталог, где находится ваш тест
Установите строку поиска в: public void test.
Установите заменяемую строку в: @Test\n\tpublic void test.
Установите флажок Регулярное выражение.

Наслаждаться.

Другие вопросы по тегам