2014-09-12 19 views
7

Tôi đang di chuyển một dự án hiện có để khởi động. Tôi đã tạo một dự án hoàn toàn mới bằng cách sử dụng start.spring.io và được sao chép qua mã nguồn, vv Mọi thứ biên dịch, nhưng khi tôi thực hiện một 'kiểm tra mvn' nó biên dịch các lớp nhưng sau đó chỉ thực thi 'ApplicationTests' mặc định (được tạo bởi bắt đầu .spring.io).Khởi động mùa xuân - Các bài kiểm tra đơn vị của tôi đang bị bỏ qua

Dưới đây là một đoạn trích từ sản lượng maven:

[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ pendview --- 
    [INFO] Using 'UTF-8' encoding to copy filtered resources. 
    [INFO] skip non existing resourceDirectory C:\dev\pendview2\src\test\resources 
    [INFO] 
    [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ pendview --- 
    [INFO] Changes detected - recompiling the module! 
    [INFO] Compiling 26 source files to C:\dev\pendview2\target\test-classes 
    [INFO] 
    [INFO] --- maven-surefire-plugin:2.15:test (default-test) @ pendview --- 
    [INFO] ------------------------------------------------------------------------ 
    [INFO] BUILD SUCCESS 
    [INFO] ------------------------------------------------------------------------ 

gì thậm chí còn lạ là nếu tôi vượt qua '-Dtest = TestAuthController' sau đó nó chạy mà đơn vị kiểm tra cụ thể:

[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ pendview --- 
    [INFO] Changes detected - recompiling the module! 
    [INFO] Compiling 26 source files to C:\dev\pendview2\target\test-classes 
    [INFO] 
    [INFO] --- maven-surefire-plugin:2.15:test (default-test) @ pendview --- 
    [INFO] Surefire report directory: C:\dev\pendview2\target\surefire-reports 

    (skipped output of AuthControllerTest for brevity) 

    ------------------------------------------------------- 
    T E S T S 
    -------------------------------------------------------Results : 

    Tests run: 6, Failures: 0, Errors: 0, Skipped: 0 

gì tôi đang làm sai à? Spring Boot có thiết lập cấu hình chắc chắn rằng tôi không phù hợp không?

Bất kỳ trợ giúp nào sẽ được đánh giá rất nhiều! -Trey

Trả lời

12

Spring Boot định cấu hình plugin Surefire để chạy tất cả các lớp thử nghiệm có tên kết thúc bằng Test hoặc Tests nhưng không bắt đầu bằng Abstract. Bạn có thể thấy điều này configuration in the spring-boot-starter-parent pom. Nếu lớp kiểm tra của bạn có tên là TestAuthController thì nó không khớp với cấu hình này. Đổi tên nó thành AuthControllerTest hoặc AuthControllerTests nên khắc phục sự cố của bạn.

1

Dường như đối với tôi có vấn đề với plugin Maven surefire, khi nó không phát hiện các kiểm tra, nếu tên lớp thử nghiệm của bạn không kết thúc với hậu tố Tests. :-)

1

Hãy thử lệnh này trong giao diện điều khiển của bạn/thiết bị đầu cuối:

mvn clean install

Nhưng trước tiên hướng đến thư mục của các bài kiểm tra của bạn. Nếu bạn wont không chạy sử dụng thử nghiệm lệnh này:

mvn clean install -Dmaven.test.skip

0

Dường như câu trả lời của Andy sẽ được cập nhật cho mùa xuân Boot 2.x. Tôi không thể nhìn thấy cấu hình chắc chắn bất cứ nơi nào bây giờ. Có lẽ đã có quá nhiều phàn nàn về quy ước này.

Các vấn đề liên quan