Tôi có một cái bình trong kho chứa maven chứa test junit, nó sẽ được chạy trong các dự án khác nhau, vì nó có thể kiểm tra dự án và kiểm tra một số tính năng của nó. May mắn thay, chắc chắn không nhận được các xét nghiệm được chứa trong một cái lọ, vì đây là Feature Request shows.Chạy JUnit Tests chứa trong jar phụ thuộc sử dụng Maven Surefire
Trong yêu cầu tính năng, chúng đề xuất giải nén bình để sau đó được thực hiện bởi chắc chắn.
Tôi đã mở gói thành công jar bằng cách sử dụng plugin phụ thuộc maven, nhưng các thử nghiệm đã chứa vẫn chưa được thực thi. Đây là cách tôi định cấu hình plugin phụ thuộc maven để giải nén jar của tôi:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>process-test-classes</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>de.mwx.test</groupId>
<artifactId>selenium-test-base</artifactId>
<version>0.1</version>
<overWrite>true</overWrite>
<outputDirectory>
${project.build.directory}/classes
</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
Bất kỳ trợ giúp nào sẽ được đánh giá cao.
Tại sao các xét nghiệm trong lọ khác? Họ có thử nghiệm cho dự án của bạn hay cái khác không? Nếu khác, tại sao bạn chạy chúng? Nếu cho ứng dụng của bạn, tại sao chúng không nằm trong dự án của bạn? –
Bình khác thực sự là một khung kiểm thử hoạt động trên dự án hiện tại và thực thi các nhiệm vụ khác. Dường như với tôi giống như cách mô-đun nhất: Nhưng nó không phải là mục đích sử dụng cho chắc chắn, tôi đoán vậy. – devsnd
Nhưng các dự án maven đã xác định một tiêu chuẩn cho các bài kiểm tra của dự án. Và IMO nó không có ý nghĩa để làm cho một dự án phụ thuộc vào các bài kiểm tra của nó - nếu bất cứ điều gì, các bài kiểm tra sẽ phụ thuộc vào mô-đun đang được kiểm tra, vì các bài kiểm tra sử dụng mô-đun, nhưng không ngược lại. –