Próbuję spakować mój projekt. Ale automatycznie uruchamia testy poprzedzające wykonanie pakowania. Testy wstawiają część zawartości do bazy danych. Nie tego chcę, muszę unikać uruchamiania testów podczas pakowania aplikacji. Czy ktoś wie, jak uruchomić pakiet bez testu?
343
Odpowiedzi:
Uruchom maven z
źródło
-DskipTests
ale to już nie działa, jakiś pomysł dlaczego?skipTests
jest lepsze niż ustawieniemaven.test.skip
.Wystarczy podać polecenie wymienione poniżej, które zignoruje wykonanie przypadków testowych,
źródło
-DskipTests
nie działało dla mnie, gdy używałemmvn clean install -DskipTests
-DskipTests
jest taki sam, jak-Dmaven.test.skip.exec=true
stackoverflow.com/a/21933970/32453 i tak, kompiluje testy i nie uruchamia ich (podczas gdy-Dmaven.test.skip=true
ich nie kompiluje)możesz dodać tę konfigurację wtyczek do pom, jeśli nie chcesz ustawiać arg wiersza poleceń:
źródło
Zauważ, że -Dmaven.test.skip uniemożliwia Mavenowi zbudowanie artefaktu słoika testowego.
Jeśli chcesz pominąć testy, ale utworzyć artefakty zgodnie z normalną wersją kompilacji:
źródło
Jeśli próbujesz tego w programie Windows Powershell, pojawi się ten błąd:
Powodem tego jest to, że w PowerShell „
-
” ma specjalne znaczenie i powoduje problemy z maven.Rozwiązaniem jest dodanie go do tyłu (`), tak jak to ...
Odniesienie: http://kuniganotas.wordpress.com/2011/08/12/invalid-task-test-skiptrue-you-must-specify-a-valid-lifecycle-phase/
źródło
to także sposób na dodanie pliku pom
źródło
Możesz przekazać
maven.test.skip
flagę jako argument JVM, aby pominąć uruchomione testy, gdy uruchomiona jest faza pakietu (i poprzednie w domyślnym cyklu życia):Możesz także przekazać
skipTests
samą flagę do pliku wykonywalnego mvn. Jeżeli chcesz dołączyć tę informację w swojej POM, można utworzyć nowy profil, w którym można skonfigurowaćmaven-surefire-plugin
, aby przejść testy .źródło
Musisz tylko podać
Nie musisz już dołączać
=true
.źródło
W Inllij IDEA istnieje również możliwość pominięcia celu testu.
źródło
Odpowiadając na stare i zaakceptowane pytanie tutaj. Możesz dodać to do pliku pom.xml, jeśli chcesz uniknąć ciągłego przekazywania argumentów wiersza poleceń:
źródło
Możesz dodać jedno
-DskipTests
lub-Dmaven.test.skip=true
dowolnemvn
polecenie do pominięcia testów. W twoim przypadku byłoby tak jak poniżej:LUB
źródło
właśnie
mvn clean install -DskipTests
źródło
Testy powinny zawsze [1] uruchamiać się przed pakietem. Jeśli musisz wyłączyć testy, robisz coś złego. Innymi słowy, próbujesz rozwiązać zły problem. Dowiedz się, na czym polega Twój problem, i zadaj to pytanie. Wygląda na to, że jest to związane z bazą danych.
[1] Możesz pominąć testy, jeśli chcesz szybko wygenerować artefakt do użytku lokalnego, na potrzeby programowania, ale ogólnie rzecz biorąc, tworzenie artefaktu powinno zawsze przebiegać pomyślnie.
źródło
Stenogramem do wykonania testów budowania i pomijania byłoby:
mvn clean install -DskipTests
źródło
W przypadku pakietu maven bez testu infekcji maven:
źródło
Robisz to oczywiście w niewłaściwy sposób. Testowanie jest ważną częścią wstępnego pakowania. Nie należy go ignorować ani pomijać, ale należy zrobić to we właściwy sposób. Spróbuj zmienić bazę danych, do której wstawia dane (np. Test_db). Konfiguracja może zająć trochę czasu. Aby mieć pewność, że ta baza danych będzie używana wiecznie, należy usunąć wszystkie dane przed końcem testów. JUnit4 ma adnotacje, które Ci to ułatwiają. Użyj adnotacji @Before, @After @Test dla właściwych metod. Musisz poświęcić na to trochę czasu, ale będzie warto!
źródło
W Intellij przejdź do Widok -> Narzędzia Windows -> wybierz Projekty Maven. W menu rozwijanym Lifecyle kliknij prawym przyciskiem myszy pakiet -> wybierz opcję Utwórz „swój projekt [pakiet]” ...
Wprowadź tę wartość:
package -Dmaven.test.skip=true -f pom.xml
w polu Wiersz polecenia. Kliknij Zastosuj, a wraz z utworzonym niestandardowym poleceniem maven powinno pojawić się menu rozwijane Uruchom konfiguracje.źródło
mvn clean install -Dmaven.test.skip=true
pracował dla mnie, ponieważ
-Dskip
już nie działał.źródło
źródło
Najlepszy i najłatwiejszy sposób na zrobienie tego, w IntelliJ Idea w oknie „Maven Project” i po prostu nie klikaj przycisku testowego. Mam nadzieję że ci pomogłam. Miłego dnia :)
źródło