Maven birim testleri önlemek ama entegrasyon testleri izin
Bazı birim testleri çalıştırmak için SureFire eklentisi kullandığım bir maven inşa ettim, ve Hatasız bazı entegrasyon testleri çalıştırmak için bir eklenti. Sadece Hatasız eklenti testleri çalıştırmak için bir yol istiyorum.
Bana bir multimodule inşa çünkü pom farklı tercihler ya da bir şey eklemek için iyi bir çözüm değil ve her modülün pom düzenlemek zorunda istemiyorum.
Durdurmak skip.tests
maven.test.skip
skipTests
vardırtümtestler, tek güvencem eklentisi durur skipITs
,.
, skipITs
, ama bunun yerine işlevselliği gibi maven komut satırı bayrak var ""? onlyİTs yani
CEVAP
Surefire yapılandırmak için bir surefire sadece atlamak için en kolay yolu buldum (ama hatasız değilaşağıdaki gibi:)
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.14</version>
<configuration>
<!-- skips surefire tests without skipping failsafe tests.
Property value seems to magically default to false -->
<skipTests>${skip.surefire.tests}</skipTests>
</configuration>
</plugin>
Bu size izin verir mvn verify -Dskip.surefire.tests
ve en garantili, hatasız, testler olacak atlanır; aynı zamanda çalıştırmak diğer tüm gerekli aşamaları da dahil olmak üzere ön-entegrasyon ve sonrası bütünleşme ve de Çalıştır verify
hangi amaç için gereklidir aslındaeğer maven oluşturma başarısızeğer entegrasyon testleri başarısız olursa.
Not Bu yeniden tanımlıyor özelliği kullanılan belirttiğiniz testleri olmalı atlandı, eğer tedarik kurallı -DskipTests=true
, surefire olacak görmezden ama hatasız olacak saygı, meydana gelecek beklenmeyen, özellikle eğer mevcut yapılar/kullanıcılar belirterek bu bayrak zaten. Basit bir çözüm pom <properties>
bölümünde skipTests
: değer skip.surefire.tests
varsayılan gibi görünüyor
<properties>
<skip.surefire.tests>${skipTests}</skip.surefire.tests>
</properties>
Gerekirse, sen-ebil sağlamak bir analagous parametre adı skip.failsafe.tests
hatasız, ancak bulamadım henüz gerekli - çünkü birim testleri genellikle vadede bir önceki aşama, ve eğer kaçmak istiyorum birim testleri ancak entegrasyon testleri, I would run test
Faz yerine verify
Faz. Deneyimlerinizi değişebilir!
Bu skip.(surefire|failsafe).tests
özellikler gerekir muhtemelen entegre surefire/arıza kodu kendisi, ama emin değilim ne kadar olacağını ihlal "onlar tam olarak aynı eklenti hariç 1 küçük fark" ahlakı.
Entegrasyon ve birim testleri arasında...
Junit: bölme entegrasyon test ve Birim...
Birim Testleri Olmadan Maven Projesi O...
En iyi Maven ile entegrasyon testleri ...
Birim MVC doğrulama testleri...