2015-05-06 20 views
5

byłem przyzwyczajony do nazywając moje testy integracyjne JUnit z *Test.java na np końcowego DatabaseConnectionTest.java i umieszczając je w swoim katalogu testów integracji: np test/integration/com...Czy "IT.java" nazwa pliku Sufiks (zamiast "Test.java") dla JUnit Integration Testuje konwencję?

o przystąpieniu nowego projektu I został skierowany

Nie , wszystkie testy znajdują się w jednym katalogu i rozróżniamy testy jednostek od testów integracji, dopasowując wzorzec do sufiksu nazwy pliku.

Więc mój plik powyżej staną DatabaseConnectionIT.java

Teraz widzę logiki w tym. Skrypt testowy może po prostu dopasować wzorzec do plików, których szuka, a wszystkie testy znajdują się w jednym miejscu.

Ale nigdy nie słyszałem o konwencji.

Moje pytanie brzmi: Czy sufiks nazwy pliku 'IT.java' (zamiast 'Test.java') dla JUnit Integration Testuje konwencję?

+0

Moim zdaniem, wydaje się, że jest to równie konwencja jak INT dla interfejsu. –

+0

Konwencja, w której się znajdujesz, wystarczy. Nie jest to uniwersalna konwencja, na przykład grupuję typy testów według katalogu, więc nazwy plików i klas nie mają ostrych skrótów. –

+1

Jest to jeden z [domyślnych szablonów] (http://maven.apache.org/surefire/maven-failsafe-plugin/integration-test-mojo.html#includes) rozpoznawany przez wtyczkę Maven Failsafe, więc trudno to nazwać brwiami wychowywanie. ... jakie jest dokładnie twoje pytanie? – kryger

Odpowiedz

7

Sufiks IT.java to konwencja używana przez Maven Failsafe Plugin. Wszystkie klasy w katalogu testowym, które mają przyrostek IT, są wykonywane przez tę wtyczkę w fazie integragion-test. (Testy z sufiksem Test są sprawdzone przez Maven Surefire Plugin w fazie test.)

+1

failsafe wykona również testy opisane z kategoriami określonymi w parametrze 'groups' https://maven.apache.org/surefire/maven-failsafe-plugin/examples/junit.html – dkatzel