Testing ing Maven

Titik penting liyane ing karya Maven yaiku tahap tes. Bakal dieksekusi yen sampeyan mbukak test , paket , verifikasi utawa fase liyane sing bakal ditindakake.

Kanthi gawan, Maven bakal mbukak kabeh tes sing ana ing folder src/test/java/ . Kanggo mbedakake tes sing bakal ditindakake saka file java liyane, konvensi penamaan wis diadopsi. Tes yaiku kelas java sing jenenge diwiwiti kanthi "Test" lan diakhiri "Test" utawa "TestCase" .

Pola umum jeneng tes:

  • **/Test*.java
  • **/*Tes.java
  • **/*TestCase.java

Tes kasebut kudu ditulis adhedhasar kerangka tes Junit utawa TestNG. Iki minangka kerangka kerja sing apik banget, kita bakal ngomong babagan iki mengko.

Asil tes arupa laporan ing format .txt lan .xml disimpen ing direktori ${basedir}/target/surefire-reports.

Tes persiyapan

Biasane ana akeh pilihan kanggo tes, mula pangembang Maven wis nggawe plugin khusus, ing paramèter sing sampeyan bisa nyetel kabeh informasi rinci babagan tes. Plugin kasebut diarani Maven Surefire Plugin lan kasedhiya ing .

<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
    	<version>2.12.4</version>
    	<configuration>
        	<includes>
                <include>Sample.java</include>
        	</includes>
    	</configuration>
	</plugin>
</plugins>

Ing conto, kita marang plugin sing kudu mbukak kelas test siji, Sample.java.

Carane cepet ngilangi tes sing rusak

Kanggo mbukak proyek kanggo testing, sampeyan kudu mbukak printah test mvn. Nanging luwih asring ana sing kudu ngilangi sawetara tes saka tes. Contone, bisa rusak, dawa banget kanggo mbukak, utawa kanggo alasan liyane.

Pisanan, sampeyan mung bisa ngandhani Maven supaya ngliwati tes nalika nindakake tahap mbangun. Tuladha:

mvn clean package -Dmaven.test.skip=true

Kapindho, ing konfigurasi plugin, sampeyan bisa mateni eksekusi tes:


<configuration>
    <skipTests>true</skipTests>
</configuration>

Lan kaping telu, tes bisa diilangi nggunakake tag <exclude> . Tuladha:


<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
    	<version>2.12.4</version>
    	<configuration>
        	<excludes>
           	<exclude>**/TestFirst.java</exclude>
	           <exclude>**/TestSecond.java</exclude>
    	</excludes>
    	</configuration>
    </plugin>
</plugins>