Bài 3. Làm việc với Element trong Selenium

Giới thiệu

Trong bài viết này, tiếp nối bài viết trước chúng ta sẽ tìm hiểu về Element trong Selenium và thực hành số thao tác cơ bản tìm kiếm Element và tác động lên chúng.

Mục tiêu

  • Thiết lập dự án Selenium C# thông qua Visual Stdio 2020 (hoặc tương đương)
  • Thực hành một số thao tác về các Element trong Selenium

Chuẩn bị

  • Máy tính cài đặt sẵn Visual Stdio 2020 (hoặc tương đương)
  • Kiến thức về lập trình C#WinForm cơ bản

Nội dung

1. Tạo dự án với Selenium C# (Xem lại bài viết đầu tiên)

2. Thao tác Element trong Selenium

- Một Website được cấu thành từ những phần tử Element bao gồm: Name, Id, Class NameTag. Việc lấy ra những thành phần giúp chúng ta tiếp cận và thao tác dễ dàng với Website cho các kịch bản Automation.

- Một số hàm quan trọng:

// Khởi tạo ChromeDriver
ChromeDriver chromeDriver = new ChromeDriver();

// Mở trình duyệt ở chế độ toàn màn hình
chromeDriver.Manage().Window.Maximize();

// Chuyển trang đến website tedu.com.vn
chromeDriver.Url = "https://tedu.com.vn/";

// Thực hiện điều hướng
chromeDriver.Navigate();

// Tìm phần tử bằng tên class
chromeDriver.FindElement(By.ClassName("className"));

// Tìm phần tử bằng CSS selector
chromeDriver.FindElement(By.CssSelector("css"));

// Tìm phần tử bằng ID
chromeDriver.FindElement(By.Id("id"));

// Tìm phần tử bằng liên kết text
chromeDriver.FindElement(By.LinkText("text"));

// Tìm phần tử bằng tên
chromeDriver.FindElement(By.Name("name"));

// Tìm phần tử bằng một phần của liên kết text
chromeDriver.FindElement(By.PartialLinkText("pText"));

// Tìm phần tử bằng tên tag
chromeDriver.FindElement(By.TagName("input"));

- Lưu ý:

+ Các hàm trên tìm ra phần tử Element đầu tiên với điều kiện.

+ Nếu chúng ta muốn tìm ra danh sách các phần tử Element với điều kiện thì thêm dùng "FindElements" (có thêm "s")

3. Thực hành 

- Chúng ta Navigate tới một Website rồi tìm phần tử  ClassNameClick vào nó.

private void button1_Click(object sender, EventArgs e)
{
    // Thao tác với FireFox
    //FirefoxDriver firefoxDriver = new FirefoxDriver();

    // Thao tác với Chrome
    ChromeDriver chromeDriver = new ChromeDriver();

    // Mở trình duyệt ở chế độ toàn màn hình
    chromeDriver.Manage().Window.Maximize();

    // chuyển trang đến website howkteam.com
    chromeDriver.Url = "https://tedu.com.vn/";
    chromeDriver.Navigate();

    // Chờ tối đa 5 giây để tìm phần tử Later button
    Thread.Sleep(5000);

    // Trên trang tedu.com.vn nếu gặp Later button thì click vào
    var laterButton =  chromeDriver.FindElement(By.Id("onesignal-slidedown-cancel-button"));
    if (laterButton != null)
    {
        laterButton.Click();
    }

    // Tìm ra phần tử search input
    var searchInput = chromeDriver.FindElement(By.ClassName("autosearch-input"));
    // Nhập vào c#
    searchInput.SendKeys("C#");
    // Tìm phần tử button search
    var searchButton = chromeDriver.FindElement(By.ClassName("button-search"));
    // Nhấn vào
    searchButton.Click();
}

- Kết quả:

Kết Luận

Trong bài viết này, chúng ta đã cùng nhau tìm hiểu về Element và thực hiện một bài thực hành trong Selenium. Tới đây các bạn có thử làm một số ví dụ thực hành khác trên các Website khác để tìm kiếm một phần tử Element và thử thao tác cơ bản Input hoặc Click vào để kiếm tra kết quả.


Tác giả: Đỗ Thiên Giang

Chú ý: Tất cả các bài viết trên TEDU.COM.VN đều thuộc bản quyền TEDU, yêu cầu dẫn nguồn khi trích lại trên website khác.

Lên trên