Moin,
ich bin kürzlich von JUnit auf TestNG umgestiegen. Mit dem entsprechenden Plugin von Ecplipse geht das meiste auf Knopfdruck. Für den vollständigen Umstieg gibt es nur ein Problem zu lösen.
Bei assert-Methoden, die zwei Parameter erwarten z.B. assertEquals oder assertSame erwartet JUnit die Parameter in der Reihenfolge expected, actual. Die Zwischenlösung von TestNG aus der Klasse org.testng.AssertJUnit tut das auch. Da also noch keine Herausforderung.
Wenn man aber auf die assert-Methoden der Klasse org.testng.Assert umsteigen will, muss man die Reihenfolge der Parameter vertauschen. Die assert-Methoden dieser Klasse erwarten die Parameter nämlich in der Reihenfolge actual, expected. Hier kommt einem das Find/Replace mit Regular Expressions zur Hilfe. Um bspw. alle assertEquals-Methoden zu finden und darin die Parameter zu vertauschen, muss man folgendes eingeben:
Der Trick sind die Capturing Groups "(.+)" diese können über Nummern z.B. "\1" referenziert werden.
Diese Regex mit Replace-All benutzen, danach (bei Eclipse) noch einmal Strg-Shift-F und Strg-S drücken und fertig
Gruß ngomo
ich bin kürzlich von JUnit auf TestNG umgestiegen. Mit dem entsprechenden Plugin von Ecplipse geht das meiste auf Knopfdruck. Für den vollständigen Umstieg gibt es nur ein Problem zu lösen.
Bei assert-Methoden, die zwei Parameter erwarten z.B. assertEquals oder assertSame erwartet JUnit die Parameter in der Reihenfolge expected, actual. Die Zwischenlösung von TestNG aus der Klasse org.testng.AssertJUnit tut das auch. Da also noch keine Herausforderung.
Wenn man aber auf die assert-Methoden der Klasse org.testng.Assert umsteigen will, muss man die Reihenfolge der Parameter vertauschen. Die assert-Methoden dieser Klasse erwarten die Parameter nämlich in der Reihenfolge actual, expected. Hier kommt einem das Find/Replace mit Regular Expressions zur Hilfe. Um bspw. alle assertEquals-Methoden zu finden und darin die Parameter zu vertauschen, muss man folgendes eingeben:
- Im Feld Find: assertEquals\((.+),(.+)\)
- Im Feld Replace With: assertEquals\(\2,\1)
Der Trick sind die Capturing Groups "(.+)" diese können über Nummern z.B. "\1" referenziert werden.
Diese Regex mit Replace-All benutzen, danach (bei Eclipse) noch einmal Strg-Shift-F und Strg-S drücken und fertig
Gruß ngomo