Tạo JUnit Bộ thử nghiệm với ví dụ: @RunWith @SuiteClasses

Trong Junit, bộ kiểm thử cho phép chúng tôi tổng hợp tất cả các trường hợp kiểm thử từ nhiều lớp vào một nơi và chạy cùng nhau.

Để chạy thử nghiệm bộ phần mềm, bạn cần chú thích một lớp bằng các chú thích được đề cập bên dưới:

  1. @Runwith(Suite.class)
  2. @SuiteClasses(test1.class,test2.class……) hoặc@Suite.SuiteClasses ({test1.class, test2.class……})

Với các chú thích ở trên, tất cả các lớp kiểm tra trong bộ phần mềm sẽ bắt đầu thực thi từng lớp một.

Các bước tạo Test Suite và Test Runner

Bước 1) Tạo một lớp kiểm tra đơn giản (ví dụ MyFirstClassTest) và thêm một phương thức được chú thích bằng @test.

Các bước để tạo bộ thử nghiệm và người chạy thử nghiệm

Bước 2) Tạo một lớp kiểm tra khác để thêm (ví dụ MySecondClassTest) và tạo một phương thức được chú thích bằng @test.

Các bước để tạo bộ thử nghiệm và người chạy thử nghiệm

Bước 3) Để tạo testSuite, trước tiên bạn cần chú thích lớp bằng @RunWith(Suite.class) và @SuiteClasses(class1.class2…..).

Các bước để tạo bộ thử nghiệm và người chạy thử nghiệm

Bước 4) Tạo một lớp Test Runner để chạy bộ thử nghiệm của chúng tôi như dưới đây;

Các bước để tạo bộ thử nghiệm và người chạy thử nghiệm

Giải thích mã:

  • Dòng mã 8: Khai báo phương thức chính của bài kiểm tra lớp sẽ chạy JUnit thử nghiệm.
  • Dòng mã 9: Thực thi các trường hợp kiểm thử bằng JunitCore.runclasses lấy tên lớp kiểm thử làm tham số (Trong ví dụ trên, bạn đang sử dụng TestSuiteExample.class được hiển thị ở bước 3).
  • Dòng mã 11: Xử lý kết quả bằng vòng lặp for và in ra kết quả không thành công.
  • Dòng mã 13: In ra kết quả thành công.

Đầu ra: Đây là kết quả đầu ra cho thấy thử nghiệm thành công không có dấu vết lỗi như được đưa ra dưới đây:

Các bước để tạo bộ thử nghiệm và người chạy thử nghiệm

JUnit Ví dụ về bộ thử nghiệm

Hãy xem xét một ví dụ phức tạp hơn

JunitTest.java

JunitTest.java là một lớp đơn giản được chú thích bằng @RunWith@Thượng hạng chú thích. Bạn có thể liệt kê số lượng .classes trong bộ phần mềm dưới dạng tham số như dưới đây:

package guru99.junit;		
import org.junit.runner.RunWith;		
import org.junit.runners.Suite;		

@RunWith(Suite.class)				
@Suite.SuiteClasses({				
  SuiteTest1.class,
  SuiteTest2.class,  			
})		

public class JunitTest {				
			// This class remains empty, it is used only as a holder for the above annotations		
}

SuiteTest1.java

SuiteTest1.java là lớp kiểm tra có phương pháp kiểm tra để in ra thông báo như dưới đây. Bạn sẽ sử dụng lớp này như một bộ trong lớp được đề cập ở trên.

package guru99.junit;		

import static org.junit.Assert.assertEquals;				

import org.junit.Test;		

public class SuiteTest1 {				

    public String message = "Saurabh";							

    JUnitMessage junitMessage = new JUnitMessage(message);							

    @Test(expected = ArithmeticException.class)					
    public void testJUnitMessage() {					

        System.out.println("Junit Message is printing ");					
        junitMessage.printMessage();			

    }		

    @Test		
    public void testJUnitHiMessage() {					
        message = "Hi!" + message;							
        System.out.println("Junit Hi Message is printing ");					
        assertEquals(message, junitMessage.printHiMessage());					
        System.out.println("Suite Test 2 is successful " + message);							
    }		
}		

SuiteTest2.java

SuiteTest2.java là một lớp kiểm tra khác tương tự như SuiteTest1.java có một phương pháp thử nghiệm để in ra một thông báo như dưới đây. Bạn sẽ sử dụng lớp này như một bộ trong JunitTest.java.

package guru99.junit;		

import org.junit.Assert;		
import org.junit.Test;		

public class SuiteTest2 {				
   	

    @Test		
    public void createAndSetName() {					
        		

        String expected = "Y";					
        String actual = "Y";					

        Assert.assertEquals(expected, actual);					
        System.out.println("Suite Test 1 is successful " + actual);							
    }		

}		

Đầu ra

Sau khi thực hiện Kiểm tra Junit.java chứa một bộ có test1.javatest2.java, bạn sẽ nhận được đầu ra bên dưới:

SuiteTest2.Java Đầu ra

SuiteTest2.Java Đầu ra

Tổng kết

Trong hướng dẫn này, bạn sẽ được tìm hiểu những kiến ​​thức cơ bản về bộ thử nghiệm và bộ thử nghiệm một cách chi tiết thông qua ví dụ.

  • Khai thác thử nghiệm hoặc tự động hóa Kiểm tra là một phần mềm hoặc tập hợp phần mềm, cho phép người dùng kiểm tra dữ liệu với nhiều đầu vào và kiểm soát việc thực thi
  • Khai thác kiểm thử thực sự cho phép một khung kiểm thử thực hiện tất cả công việc thực hiện kiểm thử bằng thư viện kiểm thử và tạo báo cáo kiểm thử
  • Trong Junit, bộ kiểm tra cho phép chúng tôi tổng hợp tất cả các trường hợp kiểm thử của nhiều lớp vào một nơi và chạy cùng nhau.