DevOps AI
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud
No Result
View All Result
DevOpsAI
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud
No Result
View All Result
DevOpsAI
No Result
View All Result
Home AI & Automation

Cách chọn ngày từ Datepicker Selenium Webdriver

Huyen Tran by Huyen Tran
1 Tháng 5, 2025
in AI & Automation
0
Cách chọn ngày từ Datepicker Selenium Webdriver
Share on FacebookShare on Twitter

Trong quá trình làm automation test, chúng ta có thể gặp nhiều trường hợp phải chọn ngày, tháng, năm từ datepicker, ví dụ như form đăng ký thông tin cá nhân, người dùng cần chọn ngày sinh; hay book khách sạn/vé máy bay, bạn cần chọn ngày đến, ngày đi…. Việc hiển thị lựa chọn ngày có thể được thể hiện thông qua giao diện người dùng khác nhau sẽ gây khó khăn cho việc tự động hóa. Bài này sẽ giới thiệu với các bạn cách xử lý và chọn ngày từ Datepicker với nhiều giao điên khác nhau.

Datepicker

DatePicker là một ui widget, nó được sử dụng kết hợp với giao diện người dùng liên quan đến calendar – nó được khởi tạo khi nhấp vào điều khiển (có thể là textbox field, icon…). Nó cho phép người dùng chọn Date (ngày, tháng và năm) và time (tùy chọn) trong calendar một cách dễ dàng.

Có hai loại điều khiển calendar phổ biến mà bạn cần biết:

  1. jQuery Calendar: là một phần của dự án mã nguồn mở tại JS Foundation (trước đây gọi là jQuery Foundation). Có một số yếu tố khác như tương tác giao diện người dùng, widget, hiệu ứng, v.v. cũng được xây dựng trên thư viện JavaScript jQuery.
  2. Kendo Calendar: được phát triển bởi Telerik.com – không phải dự án mã nguồn mở. Sử dụng giao diện người dùng Kendo, nhà phát triển có thể xây dựng ứng dụng JavaScript nhanh hơn.

Dưới đây là một số mẫu dùng jQuery.

Related Post

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

16 Tháng 6, 2025
Selenium Tutorial – Java

Selenium Tutorial – Java

1 Tháng 5, 2025

Detox – gray box end-to-end testing automation framework cho ứng dụng React Native

1 Tháng 5, 2025

Cách xử lý các sự kiện bàn phím và chuột trong Selenium sử dụng class Actions

1 Tháng 5, 2025

Chọn ngày trong Selenium WebDriver

Như các ví dụ ở trên, bạn sẽ thấy các điều khiển calendar là việc trình bày thông tin có thể khác nhau giữa các calendar. Trong một số điều khiển calendar, tháng và năm được hiển thị trong danh sách thả xuống hoặc tháng và năm có thể được thay đổi bằng cách sử dụng điều khiển điều hướng, tức là các nút trước đó (previous buttons) và tiếp theo (next buttons). Một số điều khiển cho phép chọn ngày cùng với thời gian bên cạnh (date time). Điều này làm cho việc automate đối với các điều khiển datepicker trở nên khó khăn hơn vì cần phải điều chỉnh theo giao diện và kiểu của datepicker – Đây thực sự là một thách thức trong thử nghiệm tự động hóa.

Dưới đây là hướng dẫn tự động hóa datepicker sử dụng Selenium WebDriver:

Scenario

Người dùng được chọn từ ngày (Date from) đến ngày (Date to), trong đó:

  1. Điều khiển Datepicker sẽ được hiển thị khi nhấp chuột vào ô nhập liệu (textbox field) của Date from/ Date to
  2. Ngày được chọn từ Datepicker sẽ được hiển thị vào ô nhập liệu tương ứng của Date from/ Date to
  3. Không cho phép chọn “Date from” lớn hơn “Date to” – disable hết những ngày không được chọn, tháng/ năm không được hiển thị trên dropdown list (Bài này không kiểm tra bước này)
  4. Không cho phép chọn “Date to” bé hơn “Date from” – disable hết những ngày không được chọn, tháng/ năm không được hiển thị trên dropdown list (Bài này không kiểm tra bước này)
  5. Người dùng thay đổi format date của Date from và Date to bằng cách đổi format option.

Data test:

  • Date from: Ngày 25/5/2022
  • Date to: Ngày 30/05/2022
  • Format: Short – d M, y
datepickerExampleTải xuống

Các bước thực hiện

  • Chọn ngày “Date from”
    • Xác định vị trí locator của element “Date from”
    • Nhấp (click) vào “Date from” textbox field để hiển thị datepicker lên
    • Chọn ngày, tháng năm
      • Chọn Tháng là “May” và năm là “2023”.
        • Xác định vị trí locator của dropdown Tháng và Năm
        • Sử dụng class Select để chọn tháng “May” trong danh sách tháng, năm”2023″ trong danh sách năm – ở đây chúng ta sử dụng phương thức selectByVisibleText(“Text”). Nếu chưa hiểu cách xử lý dropdown trong selenium WebDriver, bạn có thể tham khảo thêm ở đây.
      • Chọn ngày “25” trong bảng của calendar
        • Vì trong calendar các ngày được hiển thị theo table, chúng ta sẽ dùng phương thức findElements() để lấy danh sách tất cả các WebElement của các ngày thuộc Tháng Năm đã chọn (Ví dụ: May 2023).
        • Sử dụng vòng lặp duyệt qua danh sách các WebElement, nếu gặp giá trị “25” thì thực hiện phương thức click() để chọn ngày.
  • Chọn ngày cho ‘Date to’ – Thực hiện các bước tương tự như chọn ngày ‘Date from’
  • Chọn format ngày hiển thị
    • Xác định vị trí locator của dropdown ‘Format options’
    • Sử dụng phương thức selectByVisibleText(“Text”) của class Select để chọn giá trị “Short – d M, y”
  • Kiểm tra ngày chọn trong textbox “Date from” và “Date To” đúng với ngày được chọn từ datepicker theo đúng format chọn ở trên

Code example

Lưu ý: Các bạn xem thêm các bài sau nếu chưa rõ nhé

  • Tạo Selenium Automation Test với maven – Intellij IDEA
  • Cách dùng WebDriverManager với Selenium
  • Cách xác định locator của webelement
  • Cách xử lý Dropdown list trong selenium webDriver
  • Cách dùng JavaScript Executor trong Selenium Webdriver
Tags: automation testdatepickerseleniumwebdriver
Huyen Tran

Huyen Tran

Related Posts

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent
AI & Automation

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

by devopsify
16 Tháng 6, 2025
Selenium Tutorial – Java
AI & Automation

Selenium Tutorial – Java

by Huyen Tran
1 Tháng 5, 2025
Detox – gray box end-to-end testing automation framework cho ứng dụng React Native
AI & Automation

Detox – gray box end-to-end testing automation framework cho ứng dụng React Native

by Huyen Tran
1 Tháng 5, 2025
Next Post
Tìm hiểu getText() và getAttribute() trong Selenium WebDriver

Tìm hiểu getText() và getAttribute() trong Selenium WebDriver

Để lại một bình luận Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Recommended

Các website demo hay được sử dụng cho thực hành Automation Test

Các website demo hay được sử dụng cho thực hành Automation Test

11 Tháng 6, 2025
Hướng dẫn cài đặt Kubernetes trên Ubuntu 22.04

Hướng dẫn cài đặt Kubernetes trên Ubuntu 22.04

1 Tháng 5, 2025
Cài đặt Maven trên Windows

Cài đặt Maven trên Windows

11 Tháng 6, 2025
Cài đặt Grafana – Loki – Promtail monitoring log Container

Cài đặt Grafana – Loki – Promtail monitoring log Container

1 Tháng 5, 2025
Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

16 Tháng 6, 2025
MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật

MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật

16 Tháng 6, 2025
DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

13 Tháng 6, 2025
GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

11 Tháng 6, 2025
DevOpsify

Cộng đồng DevOps Việt Nam chia sẽ kiến thức giúp tăng tốc quá trình phát triển ứng dụng và tự động hóa trong lĩnh vực Cloud DevOps & AI.

Bài viết mới

  • Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent
  • MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật
  • DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

Categories

  • AI & Automation
  • Bảo mật
  • Chưa phân loại
  • DevOps & Cloud
  • Tin tức
No Result
View All Result
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud

© 2025 DevOpsify