คุณสามารถแยกพวกมันออกได้อย่างง่ายดายโดยใช้หมวดหมู่ JUnit และ Maven
นี่แสดงให้เห็นว่าสั้นมากโดยการแยกการทดสอบหน่วยและการรวมเข้าด้วยกัน
กำหนดอินเตอร์เฟสเครื่องหมาย
ขั้นตอนแรกในการจัดกลุ่มการทดสอบโดยใช้หมวดหมู่คือการสร้างส่วนต่อประสานเครื่องหมาย
อินเทอร์เฟซนี้จะใช้เพื่อทำเครื่องหมายการทดสอบทั้งหมดที่คุณต้องการเรียกใช้เป็นการทดสอบรวม
public interface IntegrationTest {}
ทำเครื่องหมายชั้นเรียนทดสอบของคุณ
เพิ่มคำอธิบายประกอบหมวดหมู่ไปด้านบนของชั้นเรียนทดสอบของคุณ ใช้ชื่อของอินเทอร์เฟซใหม่ของคุณ
import org.junit.experimental.categories.Category;
@Category(IntegrationTest.class)
public class ExampleIntegrationTest{
@Test
public void longRunningServiceTest() throws Exception {
}
}
กำหนดค่าการทดสอบหน่วย Maven
ความสวยงามของโซลูชันนี้คือไม่มีอะไรเปลี่ยนแปลงจริง ๆ สำหรับด้านการทดสอบหน่วยของสิ่งต่าง ๆ
เราเพียงเพิ่มการกำหนดค่าบางอย่างลงในปลั๊กอิน maven surefire เพื่อให้ละเว้นการทดสอบการรวมระบบ
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.11</version>
<configuration>
<includes>
<include>**/*.class</include>
</includes>
<excludedGroups>
com.test.annotation.type.IntegrationTest
</excludedGroups>
</configuration>
</plugin>
เมื่อคุณทำmvn clean test
เพียงทดสอบหน่วยที่ไม่ได้ทำเครื่องหมายของคุณจะทำงาน
กำหนดค่าการทดสอบการรวม Maven
อีกครั้งการกำหนดค่าสำหรับเรื่องนี้ง่ายมาก
เราใช้ปลั๊กอินมาตรฐานที่ไม่ปลอดภัยและกำหนดค่าให้เรียกใช้การทดสอบการรวมเท่านั้น
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.19.1</version>
<configuration>
<includes>
<include>**/*.class</include>
</includes>
<groups>
com.test.annotation.type.IntegrationTest
</groups>
</configuration>
</plugin>
การกำหนดค่าใช้เป้าหมายการดำเนินการมาตรฐานเพื่อเรียกใช้ปลั๊กอินที่ไม่ปลอดภัยในระหว่างขั้นตอนการทดสอบการรวมระบบของบิลด์
mvn clean install
ตอนนี้คุณสามารถทำ
เวลานี้เช่นเดียวกับการทดสอบหน่วยการทำงานการทดสอบการรวมจะดำเนินการในระหว่างขั้นตอนการทดสอบการรวมระบบ