Tạo JUnit Test Suite với Ví dụ: @RunWith @SuiteClasses

Trong Junit, bộ thử nghiệm cho phép chúng tôi tổng hợp tất cả các trường hợp thử nghiệm từ nhiều lớp ở một nơi và chạy nó 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ách sử dụ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 thử nghiệm trong bộ 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 thử nghiệm đơn giản (ví dụ: MyFirstClassTest) và thêm một phương thức được chú thích bằng @test.

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

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

…).

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

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 bài kiểm tra JUnit của chúng tôi.
  • Dòng mã 9: Thực thi các trường hợp thử nghiệm bằng cách sử dụng JunitCore.runclasses lấy tên lớp thử nghiệm làm tham số (Trong ví dụ trên, bạn đang sử dụng TestSuiteExample.class được hiển thị trong 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à đầu ra hiển thị thử nghiệm thành công mà không có dấu vết lỗi như được đưa ra bên dưới:

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

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 chú thích @RunWith@Suite . Bạn có thể liệt kê số lượng lớp .class trong bộ phần mềm dưới dạng các tham số như dưới đây:

gói guru99.junit;nhập org.junit.runner.RunWith;nhập org.junit.runners.Suite;@RunWith (Suite.class)@ Suite.SuiteClasses ({SuiteTest1.class,SuiteTest2.class,})lớp công khai JunitTest {// Lớp này vẫn trống, nó chỉ được sử dụng như một phần mềm lưu trữ cho các chú thích ở trên}

SuiteTest1.java

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

gói guru99.junit;nhập static org.junit.Assert.assertEquals;nhập khẩu org.junit.Test;hạng công cộng SuiteTest1 {public String message = "Saurabh";JUnitMessage junitMessage = new JUnitMessage (tin nhắn);@Test (dự kiến ​​= ArithmeticException.class)public void testJUnitMessage () {System.out.println ("Thông báo Junit đang in");junitMessage.printMessage ();}@Kiểm trapublic void testJUnitHiMessage () {message = "Xin chào!" + tin nhắn;System.out.println ("Junit Hi Message is in");khẳng địnhEquals (tin nhắn, junitMessage.printHiMessage ());System.out.println ("Thử nghiệm Suite 2 thành công" + thông báo);}}

SuiteTest2.java

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

gói guru99.junit;nhập khẩu org.junit.Assert;nhập khẩu org.junit.Test;hạng công cộng SuiteTest2 {@Kiểm trapublic void createAndSetName () {Chuỗi dự kiến ​​= "Y";String thực = "Y";Assert.assertEquals (dự kiến, thực tế);System.out.println ("Thử nghiệm Suite 1 thành công" + thực tế);}}

Đầu ra

Sau khi thực thi JunitTest .java chứa một bộ có test1.javatest2.java , bạn sẽ nhận được kết quả bên dưới:

Tóm lược

Trong hướng dẫn này, bạn đã học chi tiết kiến ​​thức cơ bản về khai thác thử nghiệm và bộ thử nghiệm với một ví dụ.

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

thú vị bài viết...