Como faço para procurar e substituir estruturalmente no IntelliJ
-
03-07-2019 - |
Pergunta
Eu estou migrando meus testes JUnit de JUnit v3 para JUnit v4.
Eu estava esperando para usar a busca e substituir estruturalmente "srs" para adicionar uma anotação @Test antes de todos os métodos começando com test. * Usando meu IDE Intellij favorito.
I figura simplesmente não consigo descobrir como fazê-lo ... Eu posso criar uma consulta que vai encontrar todos os métodos sem uma anotação (há um exemplo empacotado no IntelliJ), mas quando usado para fazer um substituir quer minha classe é substituído por apenas os nomes de método ou nada é encontrado.
Talvez um regexp é mais fácil: -)
/ Konstantin
Solução
Não é possível, a partir de agora, mas há pedidos de membros da classe substituições.
Aqui está um link útil para começar com SSR: https: // www. jetbrains.com/idea/docs/ssr.pdf
Outras dicas
Eu tentei com o seguinte SSR mas eu tenho o mesmo problema que você:
Pesquisar template:
public class $TestCase$ extends $TestCaseClazz$ {
public void $testMethod$();
}
modelo de substituição:
@Test public void $testMethod$();
E eu marque "Esta variável é alvo da pesquisa" testMethod. A pré-visualização parece ok, mas IntelliJ realmente apagar o método inteiro: (
Open Search -> Substituir no caminho
Set Directory para o diretório onde o teste é colocado
Set seqüência de pesquisa para:. Teste public void
Set substituir string para:. @Test \ n \ tpublic void test
Marque a caixa Expressão Regular.
Desfrute.