Java: Thực thi các test

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực

Các test case được thực thi bằng cách sử dụng lớp JUnitCore. JUnitCore là một facade để chạy các test. Nó hỗ trợ chạy các test JUnit 4, các test JUnit 3.8.x và các test hỗn hợp. Để chạy test từ dòng lệnh, hãy chạy java org.junit.runner.JUnitCore <TestClass>. Đối với các lần chạy test một lần, hãy sử dụng phương thức tĩnh runClasses(Class[]).

Sau đây là khai báo cho lớp org.junit.runner.JUnitCore:

public class JUnitCore extends java.lang.Object

Ở đây chúng ta sẽ xem cách thực hiện các test với sự trợ giúp của JUnitCore.

Tạo một lớp

Tạo một lớp java mà sẽ được test, chẳng hạn như MessageUtil.java, trong C:\>JUNIT_WORKSPACE.

/*
* This class prints the given message on console.
*/

public class MessageUtil {

   private String message;

   //Constructor
   //@param message to be printed
   public MessageUtil(String message){
      this.message = message;
   }
      
   // prints the message
   public String printMessage(){
      System.out.println(message);
      return message;
   }
	
}

Tạo lớp test case

  • Tạo một lớp test java, chẳng hạn như TestJunit.java.
  • Thêm một phương thức test testPrintMessage() vào lớp test của bạn.
  • Thêm annotaion @Test vào phương thức testPrintMessage().
  • Triển khai điều kiện test và kiểm tra điều kiện bằng bách sử dụng API assertEquals của JUnit.

Tạo file java có tên TestJunit.java trong C:\>JUNIT_WORKSPACE.

import org.junit.Test;
import static org.junit.Assert.assertEquals;

public class TestJunit {
	
   String message = "Hello World";	
   MessageUtil messageUtil = new MessageUtil(message);

   @Test
   public void testPrintMessage() {
      assertEquals(message,messageUtil.printMessage());
   }
}

Tạo lớp TestRunner

Bây giờ, hãy tạo một file java có tên TestRunner.java trong C:\>JUNIT_WORKSPACE để thực thi (các) test. Nó import lớp JUnitCore và sử dụng phương thức runClasses() lấy tên lớp test làm tham số của nó.

import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;

public class TestRunner {
   public static void main(String[] args) {
      Result result = JUnitCore.runClasses(TestJunit.class);
		
      for (Failure failure : result.getFailures()) {
         System.out.println(failure.toString());
      }
		
      System.out.println(result.wasSuccessful());
   }
}  	

Biên dịch các lớp Test case và Test Runner bằng javac:

C:\JUNIT_WORKSPACE>javac MessageUtil.java TestJunit.java TestRunner.java

Bây giờ hãy chạy Test Runner, nó sẽ chạy test case được xác định trong lớp Test Case đã cung cấp.

C:\JUNIT_WORKSPACE>java TestRunner

Xác minh kết quả đầu ra.

Hello World
true
» Tiếp: Test suite
« Trước: Thủ tục thực thi
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!