First Selenium Webdriver Script

Ở những bài trước mình đã giới thiệu với các bạn làm quen về Selenium Webdriver và cách cài đặt của nó. Trong tập bài này mình sẽ đưa các bạn những ví dụ đầu tiên về Selenium Webdriver Script với Java code. Ở đây mình sẽ sử dụng lớp “MyClass” Java mà mình đã tạo ở bài trước. Nếu bạn nào chưa đọc bài trước thì có thể tham khảo ở đây: https://viblo.asia/p/how-to-download-install-selenium-webdriver-1Je5EJW4KnL

Mình sẽ tạo 1 WebDriver script với nội dung:

  • Lấy trang chủ của Mercury
  • Xác minh tiêu đề của nó
  • In nó ra kết quả so sánh
  • Và đóng nó trước khi kết thúc toàn bộ chương trình Dưới đây là code WebDriver cho logic được trình bày ở trên:
package newPackage;

import org.openqa.selenium.By;
import org.openqa.selenium.chrome.ChromeDriver;

public class MyClass {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.setProperty("webdriver.chrome.driver", "D:\\Seleum\\Chrome\\chromedriver.exe");
				WebDriver driver = new ChromeDriver();
				
				String baseUrl = "http://demo.guru99.com/test/newtours/";
		        String expectedTitle = "Welcome: Mercury Tours";
		        String actualTitle = "";

		        // launch Chrome and direct it to the Base URL
		        driver.get(baseUrl);

		        // get the actual value of the title
		        actualTitle = driver.getTitle();

		        /*
		         * compare the actual title of the page with the expected one and print
		         * the result as "Passed" or "Failed"
		         */
		        if (actualTitle.contentEquals(expectedTitle)){
		            System.out.println("Test Passed!");
		        } else {
		            System.out.println("Test Failed");
		        }
		       
		        //close chrome
		        driver.close();
	}

}

Giải thích:

1. Importing Packages

Để bắt đầu chúng ta cần import packages sau:

  • org.openqa.selenium.*: chứa class WebDriver cần thiết để khởi tạo trình duyệt mới được tải với trình điều khiển cụ thể
  • org.openqa.selenium.chrome.ChromeDriver: chứa lớp ChromeDriver cần thiết để khởi tạo trình điều khiển dành riêng cho Chrome lên trình duyệt được lớp WebDriver khởi tạo. Nếu các trường hợp kiểm thử của bạn cần các hành động phức tạp hơn như truy cập vào lớp khác, chụp ảnh màn hình trình duyệt hoặc thao tác với các tệp bên ngoài, chắc chắn bạn sẽ cần import thêm các packages khác nhau.

2. Instantiating objects and variables

Để khởi tạo đối tượng, chúng ta sử dung câu lệnh:

WebDriver driver = new ChromeDriver();

Một lớp ChromeDriver không có tham số có nghĩa là cấu hình Chrome mặc định sẽ được khởi chạy bởi chương trình Jav. Cấu hình Chrome mặc định tương tự như khởi chạy Chrome ở chế độ an toàn (không có tiện ích mở rộng nào được tải).

3. Launching a Browser Session

Phương thức get () của WebDriver được sử dụng để khởi chạy phiên trình duyệt mới và hướng nó đến URL mà bạn chỉ định làm tham số.

driver.get(baseUrl);

4. Get the Actual Page Title

Lớp WebDriver có phương thức getTitle () luôn được sử dụng để lấy tiêu đề trang của trang hiện đang được tải.

actualTitle = driver.getTitle();

5. Compare the Expected and Actual Values

Ở đây, ta sử dụng câu lệnh if-else trong Java tiêu đề:

if (actualTitle.contentEquals(expectedTitle)){
		            System.out.println("Test Passed!");
} else {
		            System.out.println("Test Failed");
}

6. Terminating a Browser Session

Phương thức "close ()" được sử dụng để đóng cửa sổ trình duyệt.

 driver.close()

7. Terminating the Entire Program

Nếu bạn sử dụng lệnh này mà không đóng tất cả các cửa sổ trình duyệt trước, toàn bộ chương trình Java của bạn sẽ kết thúc trong khi mở cửa sổ trình duyệt.

System.exit(0);

8. Running the Test

Chúng ta có hai cách để thực thi code trong IDE Eclipse.

    1. Trên thanh menu của Eclipse, bấm Run> Run.
    1. Nhấn Ctrl + F11 để chạy toàn bộ code.

Nếu bạn đã làm mọi thứ chính xác, Eclipse sẽ xuất ra "Test Passed!"

Trên đây là một ví dụ cơ bản để các bạn làm quen với Selenium WebDriver. Hi vọng nó sẽ giúp ích cho bạn trong quá trình học tập.

Tài liệu tham khảo: https://www.guru99.com/first-webdriver-script.html