NỘI DUNG BÀI HỌC

Trong bài này chúng ta sẽ học cách cài đặt cũng như cách sử dụng Selenium trong C# cùng với môi trường thực thi trên Visual Studio IDE. Chúng ta sẽ dùng NUnit Framework cho bước đầu chạy auto test cơ bản với Selenium WebDriver.

Giới thiệu về Selenium

Selenium là một công cụ kiểm tra tự động hóa website mã nguồn mở hỗ trợ nhiều trình duyệt và nhiều hệ điều hành. Nó cho phép người kiểm tra sử dụng nhiều ngôn ngữ lập trình như Java, C #, Python, .Net, Ruby, PHP và Perl để viết mã các bài kiểm tra tự động.
Các bạn có thể vào bài viết trước để hiểu hơn về Selenium.


Thiết lập Visual Studio với Selenium WebDriver

Bước 1) Điều hướng đến Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution

Selenium C# | Anh Tester

Bước 2) Trong màn hình tiếp theo

  1. Tìm kiếm Selenium trên màn hình kết quả
  2. Chọn kết quả tìm kiếm đầu tiên
  3. Đánh dấu vào hộp kiểm dự án. Chọn version mới nhất luôn chơi cho máu :)
  4. Nhấp vào 'Install'

Selenium C# | Anh Tester

Bước 3) Nhấp vào nút 'OK' trong màn hình bật lên

Selenium C# | Anh Tester

Bước 4) Thông báo dưới đây sẽ được hiển thị khi gói được cài đặt thành công.

Selenium C# | Anh Tester


Setup NUnit Framework

NUnit là Testing Framework được hỗ trợ bởi Visual Studio và Selenium WebDriver. NUnit là khung Unit Testing được sử dụng rộng rãi nhất cho các ứng dụng .Net. NUnit trình bày kết quả thử nghiệm ở định dạng có thể đọc được và cho phép người thử nghiệm gỡ lỗi các thử nghiệm tự động.

Chúng ta cần cài đặt NUnit Framework và NUnit Test Adapter vào Visual Studio để sử dụng nó.


Các bước cài đặt NUnit Framework:

1. Điều hướng đến Tools -> NuGet Package Manager -> Manage NuGet Packages for Solution...

Selenium C# | Anh Tester

Bước 2) Trong cửa sổ tiếp theo

  1. Tìm kiếm NUnit
  2. Chọn kết quả tìm kiếm
  3. Chọn Project. Click Version chọn mới nhất nhen
  4. Nhấp vào "Install"

Selenium C# | Anh Tester

Bước 3) Cửa sổ bật lên bên dưới sẽ xuất hiện. Nhấp vào nút 'Ok'.

Selenium C# | Anh Tester

Bước 4) Thông báo Success dưới Output xuất hiện khi quá trình cài đặt hoàn tất.

 

Các bước tải xuống Bộ điều hợp thử nghiệm NUnit (Nunit Test Adapter)

Lưu ý là các bước dưới đây chỉ hoạt động đối với máy 32 bit. Đối với máy 64-bit, bạn cần tải xuống 'Bộ điều hợp thử nghiệm NUnit3' bằng cách làm theo quy trình tương tự như được đề cập bên dưới.

Bước 1) Điều hướng đến Tools ->NuGet Package Manager -> Manage NuGet Packages for Solution. Trong màn hình đó,

  1. Tìm kiếm NUnitTestAdapter
  2. Nhấp vào Kết quả Tìm kiếm
  3. Chọn Project. Click chọn Version mới nhất
  4. Nhấp vào "Install"

Selenium C# | Anh Tester

Bước 2) Nhấp vào OK trên cửa sổ bật lên xác nhận.

Selenium C# | Anh Tester

Như vậy là đã xong bước cấu hình Selenium và NUnit Framework cho Project của chúng ta.


Selenium và NUnit Framework

Tích hợp selen với khung NUnit cho phép người thử nghiệm phân biệt giữa các lớp thử nghiệm khác nhau. NUnit cũng cho phép người thử nghiệm sử dụng các chú thích như SetUp, Test và TearDown để thực hiện các hành động trước và sau khi chạy thử nghiệm.

Khung NUnit có thể được tích hợp với Selenium bằng cách tạo một lớp thử nghiệm NUnit và chạy lớp thử nghiệm bằng khung NUnit.

Dưới đây là các bước cần thiết để tạo và chạy một lớp thử nghiệm bằng NUnit framework.

Các bước để tạo một lớp NUnit Test trong Selenium:

Bước 1) Trong Trình khám phá Solution, Nhấp chuột phải vào tên Project > Add > Class

Selenium C# | Anh Tester

Bước 2) Cửa sổ tạo Class sẽ xuất hiện.

  1. Cung cấp tên cho Class
  2. Bấm vào nút "Add"

Selenium C# | Anh Tester

Màn hình dưới đây sẽ xuất hiện.

Selenium C# | Anh Tester


Tiếp theo là tải chromedriver về:

Download version phù hợp bằng với Version của Google Chrome đang dùng
http://chromedriver.storage.googleapis.com/index.html


Bước 3)
 Thêm mã sau vào Class đã tạo.

Dán thử đoạn code chạy coi nào. Lẹ nào lẹ nào

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;

namespace VTACourses
{
    class SeleniumDemo
    {
        IWebDriver driver;

        [SetUp]
        public void SetupTest()
        {
            driver = new ChromeDriver("D:\\TESTER\\SeleniumC#");
            driver.Manage().Window.Maximize();
        }

        [Test]
        public void RunTest()
        {
            driver.Navigate().GoToUrl("https://anhtester.com/");

            Thread.Sleep(1000);
            driver.FindElement(By.Id("btn-login")).Click();

            driver.FindElement(By.Name("email")).Clear();
            driver.FindElement(By.Name("email")).SendKeys("autotest@mailinator.com");
            
            driver.FindElement(By.Name("password")).Clear();
            driver.FindElement(By.Name("password")).SendKeys("123456");

            driver.FindElement(By.Id("login")).Click();

            Thread.Sleep(2000);
            driver.FindElement(By.LinkText("My Profile")).Click();

            Thread.Sleep(2000);
        }

        [TearDown]
        public void CloseTest()
        {
            driver.Quit();
        }
    }
}
 

Lưu ý: bạn cần chỉ định vị trí của tệp 'chromdriver.exe' trong quá trình khởi tạo trình điều khiển Chromedriver.


Bước 4)
 Nhấp vào 'Build' -> 'Build Solution'

Selenium C# | Anh Tester

LƯU Ý: Bạn có thể gặp lỗi như sau

Selenium C# | Anh Tester

Để giải quyết điều này, Click chuột phải vào tên Project > Properties và thay đổi Loại đầu ra thành "Class Library". Vì mặc định là "Console Application". Nếu mà không lỗi thì thôi nghe chời =))

Selenium C# | Anh Tester

Bước 5) Sau khi xây dựng thành công, chúng ta cần mở cửa sổ Test Explorer. Nhấp vào Test -> Windows -> Test Explorer

Selenium C# | Anh Tester

Bước 6) Cửa sổ Test Explorer mở ra với danh sách các bài kiểm tra có sẵn. Nhấp chuột phải vào Test Explorer và chọn Run Selected Tests

Selenium C# | Anh Tester

Bước 7) Selenium phải mở trình duyệt với URL được chỉ định và đóng trình duyệt. Trạng thái trường hợp kiểm tra sẽ được thay đổi thành 'Passed' trên cửa sổ Test Explorer.

Selenium C# | Anh Tester

Teacher

Teacher

Anh Tester

Tester

Đường dẫu khó chân vẫn cần bước đi
Đời dẫu khổ tâm vẫn cần nghĩ thấu

Cộng đồng Automation Testing Việt Nam:


🌱 Zalo
Automation Testing:   https://zalo.me/g/lsxswc560
🌱 Facebook Group: Cộng đồng Automation Testing Việt Nam (Website, Desktop, Mobile)
🌱 Facebook Fanpage: Cộng đồng Automation Testing Việt Nam - Selenium

Chia sẻ khóa học lên trang

Bạn có thể đăng khóa học của chính bạn lên trang Anh Tester để kiếm tiền

Dan sách bài học