Đây là cấu trúc dự án của tôi trong mvn
:Làm thế nào để kiểm tra đơn vị Maven khác nhau từ tích hợp Kiểm tra?
Như bạn có thể nhận thấy, tôi có hai lớp trong src/test/java
CardValidtorIT.java
(Đây là thử nghiệm tích hợp)CardValidatorTest.java
(Đây là bài kiểm tra đơn vị)
khi tôi chạy
mvn package
tôi nhận thấy chỉ có unit-test (CardValidatorTest.java)
đang chạy
Nhưng khi tôi chạy
mvn integration-test
tôi nhìn thấy cả hai unit-test
và Integration tests
đang chạy.
Làm thế nào để mvn
không biết thực hiện CardValidatorIT.java
khi tôi chạy mvn package
. Đó là, tại sao nó không chạy CardValidatoryIT.java
Đây là tôi pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>chapter14</artifactId>
<groupId>org.agoncal.book.javaee7</groupId>
<version>1.0</version>
</parent>
<groupId>org.agoncal.book.javaee7.chapter14</groupId> <artifactId>chapter14-service</artifactId> <version>1.0</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.glassfish.main.extras</groupId> <artifactId>glassfish-embedded-all</artifactId> <version>4.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <version>2.12.4</version>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Tái bút: Tôi biết rằng tôi có một mục tiêu integration-test
trong mvn. nhưng tôi đã không gắn liền với mục tiêu mà lớp nên được chạy trong thử nghiệm hội nhập
Cảm ơn
Tôi chắc chắn rằng tôi không có phụ thuộc cấp mã. 'mvn test' chỉ chạy 1 test (cardValidatorTest),' mvn package' chỉ chạy 1 test (CardValidatorTest) nhưng 'mvn integration-test' chạy 2 test (CardValidatorTest và CardValidatorIT). Nhưng câu trả lời của bạn cũng giúp ích và liên kết! Cảm ơn –