[TEST AUTOMATION] HƯỚNG DẪN CƠ BẢN SELENIUM TRONG ...
Có thể bạn quan tâm
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 automation
- Python có cộng đồng hỗ trợ đông đảo.
- Python viết code ngắn ngọn và dễ đọc, đồng thời dễ dàng tiếp cận với người mới đắt đầ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á tiện lợi.
- Tốc độ xử lý khá nhanh vì không cần phải biên dịch code trước khi chạy.
Python unit test Python unittest (còn được gọi là PyUnit) là một nền tảng kiểm thử (testing framework), đượ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ố class chính trong unittest:
- setUp(): là phương thức được chạy trước khi mỗi thử nghiệm bắt đầu (thường được dùng để mở browser).
- tearDown(): là phương thức được chạy sau mỗi thử nghiệm (dù fail hay success và thường dùng để đóng browser).
- 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.
- tearDownClass(): 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ừ khoá để xác định phương thức nào là phương thức kiểm thử. Để 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(self):”
- Tài liệu tham khảo thêm về unittest trong Python: https://docs.python.org/2/library/unittest.html
2. Cài đặt môi trường
Cài đặt Python
- B1: Truy cập trang: https://www.python.org/downloads/ để tải xuống bản phát hành mới nhất của Python.
- B2: Nhấn đúp chuột vào file download đã tải và thực hiện step theo hướng dẫn khi cài đặt.
- B3: Kiểm tra Python đã cài đặt: Mở Command Prompt → chạy lệnh: 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ế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 nên sẽ không hướng dẫn. Ngoài ra thì có thể sử dụng các IDE khác: PyCharm, Eclipse, … Cài plugin Python vào intellij IDE: vào menu File → Settings → Plugins và nhập Python để tìm kiếm. Chọn install vào plugin Python community edition đợi cài đặt hoàn tất thì restart lại intellij.
3. Tạo script đơn giản
TestCase và data test
TestCase: thực hiện viết script trên trang đăng nhập “herokuapp” và sử dụng trình duyệt Chrome để chạy test:
- Step 1: truy cập trang https://the-internet.herokuapp.com/login
- Step 2: nhập tên login vào textbox Username
- Step 3: nhập mật khẩu vào textbox Password
- Step 4: nhấn button Login
- Step 5: kiểm tra kết quả
Data test: Chuẩn bị data test trong file excel theo mẫu sau:
Ngoài ra thì có thể chuẩn bị data test từ json, xml, …
Tạo project mới trong IDE
Mở Intellij, trên màn hình welcome to intellij IDE chọn “new project”. Chọn Python, phần Project SDK thì các bạn trỏ tới file python.exe trong folder Python mà bạn đã cài đặt.
Đặt tên project và nhấn Finish để hoàn thành. Sau đó tạo các folder trong project vừa tạo để dễ quản lý và maintain:
- dataTests: lưu dữ liệu dùng để test
- drivers: lưu các driver của browser
- pages: lưu các element của page cần thao tác
- reports: dùng để lưu report
- steps: lưu các file thực hiện step test
- tests: lưu file dùng để chạy script, quản lý testcase
- utils: lưu file custom như: customChromeDriver,…
- verifys: lưu file kiểm tra kết quả chạy test
Tạo script
Tải driver chrome theo version chrome hiện có và lưu vào folder “drivers” (Downloads – ChromeDriver – WebDriver for Chrome)
Đọc dữ liệu test từ file data test (Được lưu trong excel)
Tạo function ReadDataTest.py từ folder “steps” dùng để đọc data test từ file excel đã chuẩn bị.
- Note:
- Trường hợp lỗi thư viện: Nhấn vào icon lỗi tại thư viện lỗi và chọn import.
- Đối với file excel “.xlsx”: Cần chạy lệnh pip install xlrd==1.2.0 trong terminal của intellij.
Custom trình duyệt Chrome
Tạo function CustomChromeDriver.py từ folder “utils” dùng để tùy chỉnh profile của trình duyệt muốn mở:
Tạo file test
Tại folder “tests” tạo mới file Python: Nhập tên file và chọn “Python unit test”
File LoginTests.py
① Nhận data test đã được tạo trong file ReadDataTest.py ② Mở trình duyệt Chrome ③ Truy nhập URL dùng để chạy script ④ Đóng trình duyệt khi kết thúc test ⑤ Các bước khi test login: Nhập username, password, nhấn nút login ⑥ Kiểm tra kết quả mong muốn đã define trong dataTest với kết quả thực tế khi test
3.3.4. Get các element cần thao tác Tạo file Page_login.py lưu các element cần thao tác.
Tạo script thực hiện step
Tạo file Step_login.py trong folder “step”
① Các thao tác dùng để login: nhập username → nhập password → nhấn nút login. ② Get các element từ các locator trong file Page_login.py.
3.3.6. Tạo script kiểm tra kết quả Script này để get kết quả sau khi thực hiện login. Ở đây tôi sẽ get 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 script
Để xem được kết quả test thuận tiện thì cần thêm html-report vào script: Trên file LoginTests.py thêm import HTMLTestRunner sau đó import thư viện HTMLTestRunner vào hoặc chạy lệnh pip install HTMLTestRunner-Python3
Ở lệnh unittest.main() gọi đến phương thức report:
Kết quả chạy test sẽ được lưu vào report:
Ngoài ra để report được dễ nhìn hơn thì có thể custom tại template. Ví dụ template đã được custom lại:
- Source code on github: GitHub – haunvc7049/UnittestPythonSelenium
Từ khóa » Học Selenium
-
Selenium Tutorials - 31+ Bài Hướng Dẫn Học Selenium - Viblo
-
[Selenium Java] Bài 1: Java Basic | Anh Tester
-
[Selenium Java] Bài 3: Giới Thiệu Selenium Webdriver | Anh Tester
-
Khóa Học Selenium Cơ Bản đến Nâng Cao | How Kteam
-
[Bài 1] Selenium Webdriver Là Gì? | GiangTester Blog
-
Selenium Automation With Python - Trung Tâm Tin Học ĐH KHTN
-
Khóa Học Kiểm Thử Tự động Với Selenium, Cucumber.
-
Học Selenium Online (Bài 01) - Cách Tạo TestScript Kiểm Thử Tự động
-
[Lập Trình Selenium Cơ Bản][Bài 1] - - YouTube
-
Làm Quen: Tóm Tắt Cơ Bản Về Selenium | TopDev
-
Hướng Dẫn Sử Dụng Selenium Chi Tiết
-
Đào Tạo Auto Test: Selenium - Tester Hà Nội
-
HỌC KIỂM THỬ TỰ ĐỘNG SELENIUM WEBDRIVER -BÀI 1
-
Học Thành Thạo Selenium Webdriver Online | Edumall Việt Nam