Selenium đóng cửa sổ bật lên python

Trong lĩnh vực công nghệ thông tin những năm gần đây, ngôn ngữ lập trình Python ngày càng trở nên phổ biến. Với bất kỳ trình lập trình viên nào, việc tự kiểm tra [test] những dòng mã mình viết ra là rất quan trọng. Với Python, người lập trình cần nắm bắt những kỹ năng kiểm tra đặc biệt của kẻ thù. Trong bài viết này, chuyên gia của CO-WELL Asia sẽ hướng dẫn cơ bản về selen trong Python sử dụng UnitTest

1. Tìm hiểu về Test automation trong python

Các lý do chọn Python là ngôn ngữ để thực hiện tự động hóa

  • Python has an East Island Community
  • Python viết mã ngắn ngọn và dễ đọc, đồng thời dễ dàng tiếp cận với người mới ngưỡng đầu
  • Selenium Python API bạn có thể truy cập tất cả các chức năng của Selenium webdriver một cách trực quan
  • Python được cài đặt đơn giản hơn nhiều so với Java và cách sử dụng thư viện cũng khá thuận lợi
  • Xử lý tốc độ khá nhanh vì không cần phải biên dịch mã trước khi chạy

Kiểm tra đơn vị Python
Python unittest [còn được gọi là PyUnit] là nền tảng kiểm tra [khung thử nghiệm], được phát triển từ JUnit dành cho Python

  • Cũng tương tự testNG trong Java thì Python vẫn có một số lớp chính trong unittest
    • cài đặt[]. là phương thức được chạy trước khi mỗi lần thử nghiệm bắt đầu [thường được sử dụng để mở trình duyệt]
    • phá bỏ[]. là phương thức được chạy sau mỗi lần thử nghiệm [không thành công hay thất bại và thường được sử dụng để đóng trình duyệt]
    • setUpClass[]. là phương thức được chạy một lần trước khi tất cả các thử nghiệm bắt đầu
    • giọt nước mắtClass[]. là phương thức được chạy một lần sau khi tất cả các thử nghiệm kết thúc
  • Ở Python unittest chúng ta không có từ khóa để xác định phương thức nào là phương thức kiểm tra. Để làm điều này, chúng ta phải đặt tên cho phương thức với tiền tố “test_”. Ví dụ. “test_login[bản thân]. ”
  • Tài liệu tham khảo thêm về unittest trong Python
    //docs.python.org/2/library/unittest.html

 

2. Cài đặt môi trường

Cài đặt Python

  • B1. Truy cập trang. //www.python.org/downloads/ để tải xuống bản phát hành mới nhất của Python
  • B2. Nhấp đúp chuột vào tệp đã tải xuống và thực hiện bước theo hướng dẫn khi cài đặt
  • B3. Kiểm tra Python đã cài đặt. Open Command Prompt → run command. python --version [hoặc python –V]

 

Cài đặt Selenium với Python

Mở Command Prompt → chạy dòng lệnh “pip install selenium

Cài đặt IDE

Để phục vụ cho việc viết code Python được thuận lợi, chúng ta cần download IDE phù hợp. Ở đây tôi sử dụng IDE Intellij [Vì IDE này máy đã được cài đặt sẵn]. Về phần cài đặt thì đơn giản sẽ không hướng dẫn. Ngoài ra, có thể sử dụng các IDE khác. PyCharm, Nhật thực, …
Cài đặt plugin Python vào intellij IDE. vào menu Tệp → Cài đặt → Plugin và nhập Python để tìm kiếm. Chọn cài đặt vào plugin Python community edition đợi cài đặt hoàn tất, khởi động lại intellij

3. Create script menu

TestCase và kiểm thử dữ liệu

Trường hợp thử nghiệm. thực hiện viết tập lệnh trên trang đăng nhập, nhập “herokuapp” và sử dụng trình duyệt Chrome để chạy thử nghiệm

  • Bước 1. truy cập trang //the-internet.herokuapp.com/login
  • Bước 2. nhập tên đăng nhập vào hộp văn bản Tên người dùng
  • Bước 3. nhập mật khẩu vào hộp văn bản Mật khẩu
  • Bước 4. nhấn nút Đăng nhập
  • Bước 5. kiểm tra kết quả

kiểm tra dữ liệu. Chuẩn bị data test trong file excel theo mẫu sau


Ngoài ra, có thể chuẩn bị kiểm tra dữ liệu từ json, xml, …

Tạo dự án mới trong IDE

Open Intellij, on screen welcome to intellij IDE select “new project”
Select Python, section Project SDK, you cursor to file python. exe trong thư mục Python mà bạn đã cài đặt

Đặt tên dự án và nhấn Kết thúc để hoàn thành
Sau đó tạo các thư mục trong dự án vừa tạo để dễ quản lý và bảo trì

  • kiểm tra dữ liệu. save data used to test
  • trình điều khiển. lưu trình điều khiển của trình duyệt
  • trang. save the element of page to thao tác
  • báo cáo. used to save report
  • bước. lưu các tập tin thực hiện bước kiểm tra
  • kiểm tra. save file used to run script, manager testcase
  • đồ dùng. lưu tập tin tùy chỉnh như. ChromeDriver tùy chỉnh,…
  • xác minh. lưu tệp kiểm tra kết quả chạy thử

Tạo tập lệnh

Tải driver chrome theo phiên bản chrome hiện có và lưu vào thư mục “drivers”
[Tải xuống – ChromeDriver – WebDriver cho Chrome]

Đọc dữ liệu test từ file data test [Được lưu trong excel]

Tạo hàm ReadDataTest. py from folder “steps” used to read data test from file excel đã chuẩn bị sẵn

  • Ghi chú
  • Trường hợp thư viện lỗi. Click vào icon error at error library and select import
  • Đối với file excel “. xlsx”. Cần chạy lệnh pip install xlrd==1.2.0 trong terminal của intellij

 

Trình duyệt Chrome tùy chỉnh

Tạo chức năng CustomChromDriver. py from folder “utils” used to edit profile of browser you want to open

Tạo tệp kiểm tra

Tại thư mục “tests” tạo mới file Python. Nhập tên tệp và chọn “Python unit test”

Đăng nhập tệp Kiểm tra. py

①Nhận dữ liệu kiểm tra đã được tạo trong tệp ReadDataTest. py
② Mở trình duyệt Chrome
③ Dùng URL truy cập để chạy tập lệnh
④ Đóng trình duyệt khi kết thúc kiểm tra
⑤ Các bước khi đăng nhập thử nghiệm. Nhập tên người dùng, mật khẩu, nhấn nút đăng nhập
⑥ Kiểm tra kết quả mong muốn đã xác định trong dataTest với kết quả thực tế khi kiểm tra

3. 3. 4. Nhận các phần tử cần thao tác
Tạo tệp Page_login. py save the element to thao tác

Bước thực hiện tập lệnh

Tạo tệp Step_login. py trong thư mục “step”

① Các thao tác sử dụng để đăng nhập. nhập tên người dùng → nhập mật khẩu → nhấn nút đăng nhập
② Lấy các phần tử từ các bộ định vị trong tệp Page_login. py

3. 3. 6. Tạo kịch bản kiểm tra kết quả
Script này để lấy kết quả sau khi thực hiện đăng nhập. Ở đây tôi sẽ lấy nội dung thông báo và so sánh với nội dung thông báo mong muốn trong file data test

Chạy tập lệnh

Để xem kết quả test thuận tiện thì cần thêm html-report vào script
Trên tập tin LoginTests. py thêm import HTMLTestRunner sau đó nhập thư viện HTMLTestRunner vào hoặc chạy lệnh _______8_______

At unittest command. main[] call to method report

Kết quả chạy thử sẽ được lưu vào báo cáo

Ngoài ra để báo cáo dễ nhìn hơn thì có thể tùy chỉnh tại mẫu. Ví dụ mẫu đã được tùy chỉnh lại

  • Mã nguồn trên github. GitHub – haunvc7049/UnittestPythonSelenium

Nguyễn Võ Công Hậu – CO-WELL Asia

 

Trên đây là những hướng dẫn cơ bản của chuyên gia từ CO-WELL Asia về Unit Testing trong Python. Đừng quên theo dõi chuyên mục CODEWELL trên website CO-WELL Asia để đón đọc những bài viết công nghệ bổ ích nhé

Chủ Đề