Come posso cercare e sostituire strutturalmente in Intellij
-
03-07-2019 - |
Domanda
Sto migrando i miei test Junit da Junit v3 a Junit v4.
Speravo di usare la ricerca e sostituire strutturalmente "srs" per aggiungere un'annotazione @Test prima di iniziare tutti i metodi con test. * usando il mio IDE preferito Intellij.
Non riesco proprio a capire come farlo ... Posso creare una query che troverà tutti i metodi senza un'annotazione (c'è un esempio in bundle in Intellij) ma quando usato per fare una sostituzione, la mia classe viene sostituita da viene trovato solo il nome del metodo O nulla.
Forse una regexp è più semplice :-)
/ Konstantin
Soluzione
Al momento non è possibile, ma ci sono richieste di sostituzioni dei membri della classe.
Ecco un link utile per iniziare con ssr: https: // www. jetbrains.com/idea/docs/ssr.pdf
Altri suggerimenti
Ho provato con il seguente SSR ma ho lo stesso problema con te:
Modello di ricerca:
public class $TestCase$ extends $TestCaseClazz$ {
public void $testMethod$();
}
Modello di sostituzione:
@Test public void $testMethod$();
E controllo " Questa variabile è target della ricerca " su testMethod. L'anteprima sembra ok, ma IntelliJ in realtà elimina l'intero metodo :(
Apri ricerca - > Sostituisci nel percorso
Impostare Directory sulla directory in cui è posizionato il test
Imposta la stringa di ricerca su: public void test.
Impostare sostituisci stringa su: @Test \ n \ tpubblico test vuoto.
Seleziona la casella Espressione regolare.
Godetevi.