Czy można uruchomić test maven (mvn clean test
) w projekcie z wieloma modułami i pominąć/zignorować test konkretnego modułu? np. -Dmaven.test.skip=true
, ale dla konkretnego modułu i nie wszystkich modułów? Nie chcę zmienić surefu <configuration>
na moduł <skipTests>true</skipTests>
dla modułu, który chcę pominąć podczas testów. Chciałem wiedzieć, czy można to zrobić z poziomu wiersza poleceń. Potrzebuję tego, ponieważ w moim projekcie mam wiele modułów, a szczególnie jeden lub dwa trwają naprawdę długo, aby wykonać test, więc gdy chcę przetestować tylko kilka modułów, chciałbym pominąć ten czas, biorąc moduły, do których nie mam wprowadzono jakiekolwiek zmiany.Zignoruj moduł podczas testowania testowego dla projektu z wieloma modułami.
Odpowiedz
Czy zmiana konfiguracji wtyczki "surefire" jest naprawdę trudna? Ponieważ można ją zmienić tylko raz w module ...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12</version>
<configuration>
<skipTests>${skip.foo.module.tests}</skipTests>
</configuration>
</plugin>
</plugins>
</build>
... i przekazać prawdziwe/fałszywe wartości znacznika skipTests do właściwości maven, aktywowany za pomocą dedykowanego profilu:
<properties>
<skip.foo.module.tests>false</skip.foo.module.tests>
</properties>
<profiles>
<profile>
<id>SKIP_FOO_MODULE_TESTS</id>
<properties>
<skip.foo.module.tests>true</skip.foo.module.tests>
</properties>
</profile>
</profiles>
Tak, że można wyłączyć testy w module Foo z wiersza poleceń:
mvn czyste testy -P SKIP_FOO_MODULE_TESTS
Dzięki Yanflea. Chociaż nie było to dokładnie to, czego chciałem, ale to działa dla mnie. Dzięki takiemu podejściu mogę mieć jeden profil na raz, więc w przypadku, gdy chcę pominąć testy dla więcej niż jednego modułu, nie mogę. Ale w każdym razie to niewiele. – Jay
Twoje moduły mogą współdzielić tę samą pompę dla rodziców, w której definiujesz swoje profile. Co uniemożliwia korzystanie z tego samego profilu do pominięcia testów kilku modułów potomnych w tym samym czasie? – Yanflea
To zadziała tylko wtedy, gdy chcę cały czas pominąć te moduły. Kiedy się rozwijam, czasami wprowadzam zmiany w module-1, które nie wpływają na moduł-7 i moduł-9, więc chciałbym je pominąć, ale w innym czasie, jeśli dokonam zmian w module-3, co wpływa na moduł-7, ale nie moduł-9, w tym przypadku chciałbym pominąć tylko moduł-9. W przypadku takich scenariuszy udostępnianie profili w systemie nadrzędnym nie będzie działać. Teraz nie chcę zanieczyszczać mojej pompy macierzystej wszystkimi rodzajami profili pomijając testy dla różnych modułów i kombinacji. – Jay
Można to osiągnąć za pomocą profilu, który skonfigurował konfigurację surefire do pominięcia. To pozwoliłoby na utrzymanie testu przez większość czasu, ale gdy chciałeś kiedyś pominąć testy jednego z modułów, możesz go wywołać. Następnie możesz wykluczyć wszystkie testy za pomocą testów pomijania lub możesz użyć opcji wykluczania, aby wykluczyć tylko jeden lub dwa testy, które trwają długo.
- 1. Jak uzyskać ścieżkę projektu z projektu testowego?
- 2. Tworzenie niezależnych modułów z wieloma modułami i wydawanie pojedynczych modułów?
- 3. Webpack z wieloma kątowymi 2 modułami
- 4. Budowanie pojedynczego słoika z projektu z wieloma modułami - w tym klasy testowe
- 5. Pythonowe zależności testowania setup.py dla niestandardowego polecenia testowego
- 6. Visual Studio 2012 wyświetla niepoprawną ikonę dla projektu testowego
- 7. Jak zrobić moduł requirejs z wieloma plikami
- 8. Modele ZF2 udostępnione między modułami
- 9. FlashDevelop - Ustawienie projektu testowego "Dokument otwarty" przestaje działać podczas zapisywania projektu jako XFL
- 10. nie można uzyskać dostępu AppDelegate podczas testowania projektu Xcode
- 11. Dynamiczny "host testowy" lub moduł pakujący do testowania jednostek iOS?
- 12. Jak spakować projekt wielomodułowy z modułami zagnieżdżonymi
- 13. "niezainicjowana stała", gdy moduł pomocnika testowego dołączonego do zestawu
- 14. Udostępnianie pakietów Java między modułami w IntelliJ?
- 15. Zignoruj niektóre klasy podczas skanowania PackagesToScan
- 16. Zignoruj element podczas budowania listy w pythonie
- 17. Zignoruj ostatniego \ n podczas korzystania readlines z pytona
- 18. ReactCSSTransitionGroup z modułami CSS
- 19. Moduł testowy modułu RoboGuice do wstrzykiwania zamiast modułu testowego
- 20. Ręczne pobranie tokenu CSRF podczas testowania
- 21. Porady dotyczące testowania jednostek na obiekcie z wieloma właściwościami
- 22. Zignoruj właściwość podczas serializacji xml, ale nie podczas deserializacji.
- 23. Witryna Maven w projekcie z wieloma modułami nie może rozwiązać zależności.
- 24. uzyskiwanie losowych obrazów dla skryptu testowego
- 25. Zignoruj puste pola podczas odraczania JSON z Gsonem lub Jacksonem
- 26. Znajdowanie wycieków pamięci podczas testowania urządzenia iPhone
- 27. Udostępnianie pamięci między modułami
- 28. Logowanie podczas testowania z RSpec i Authlogic
- 29. jak korzystać z instrumentów podczas testowania?
- 30. Zeus nie podczas testowania z rspec
Tak. Musisz przeczytać na [profile maven] (http://maven.apache.org/guides/introduction/introduction-to-profiles.html) –