XÁC ĐỊNH VỊ TRÍ ELEMENT VỚI AUTOMATION TEST

Khi làm Automation Test, việc xác định đúng vị trí chính xác một element trên giao diện là bắt buộc trước khi tạo và chạy kịch bản test tự động. Trong bài viết này, Hybrid Technologies sẽ chia sẻ đến các bạn kinh nghiệm xác định vị trí element trên giao diện gồm: giao diện Website và giao diện phần mềm trên Mobile.

Element là gì?

Trên giao diện, element có thể là: Textbox, nút Button, Check box, Radio button… Mỗi element này có các thuộc tính: ID, Name, CSS… do lập trình viên đặt tên, tùy từng Website hoặc phần mềm Mobile có giá trị các thuộc tính sẽ khác nhau. 

Điều quan trọng, vị trí các element này phải được xác định duy nhất trên giao diện. 

Ví dụ: ID có những mã ID tự gien, element không có thuộc tính Name, element có thuộc tính CSS nhưng CSS này được dùng cho cả nhiều element khác nữa trên cùng giao diện. Do đó, những trường hợp element này sẽ không thể xác định được vị trí. 

Chính vì vậy, XPath được ra đời để giúp chúng ta xác định được đúng vị trí element. Đồng thời, XPath giải quyết được các vấn đề này mà chúng ta đang gặp phải trong quá trình xác định vị trí một element trên giao diện.

XPath là gì?

XPath là một trong 3 thành phần trong ngôn ngữ XSL – Extensible Style Language. Đó là ngôn ngữ hỗ trợ tìm kiếm thông tin trong tài liệu XML, sử dụng biểu thức XPath để định hướng tìm kiếm dữ liệu trên XML thay vì phải thực hiện tìm kiếm đệ quy để duyệt cây XML. Xpath được sử dụng để tìm vị trí bất kỳ phần tử trên Web sử dụng cấu trúc HTML – DOM. XPath chứa đường dẫn của phần tử nằm trên trang Web.

  • XSL Transformation (XSLT): Là một ngôn ngữ dạng XML dùng để chuyển đổi XML thành định dạng khác như HTML
  • XML Path Language (X-Path): Là một ngôn ngữ dùng để truy xuất các thành phần trong XML
  • XSL Formatting Object (XSL-FO): Là ngôn ngữ dùng để định dạng XML

Mô hình HTML DOM (Document Object Model)

Xpath định nghĩa 7 loại nodes theo cấu trúc của XML theo mô hình dưới đây:

Cú pháp tiêu chuẩn để tạo Xpath:

Cú pháp tiêu chuẩn để tạo Xpath sử dụng ký hiệu xác định Node 

Các thuộc tính trong Cấu trúc Xpath của 1 phần tử cần tìm

Xác định XPath từ cơ bản đến nâng cao

1. XPath Cơ bản

2. XPath dạng Nâng cao

  • Sử dụng contains

  • Sử dụng OR

  • Sử dụng AND

  • Sử dụng function Start-with

  • Sử dụng function: text()

  • Sử dụng thông qua phương thức axes: following

  • Sử dụng thông qua phương thức axes: Ancestor

  • Sử dụng thông qua phương thức axes: Child

  • Sử dụng thông qua phương thức axes: Preceding

  • Sử dụng thông qua phương thức axes: Following-sibling

  • Sử dụng thông qua phương thức axes: Parent

  • Sử dụng thông qua phương thức axes: Self

  • Sử dụng thông qua phương thức axes: Descendant

 

Hy vọng bài viết này sẽ giúp ích cho công việc của các bạn và đừng ngần ngại comment phía dưới để cùng trao đổi với chúng mình nhé!

Nguồn tham khảo:

  • Blog của tác giả kieutrongthanh: http://kieutrongkhanh.net/index.php/xml-a-java/89-gii-thiu-v-xpath
  • Trang Web Guru99: Xpath in Selenium => https://www.guru99.com/xpath-selenium.html
  • Trang Web ToolsQA => http://toolsqa.com/selenium-webdriver/xpath-helper/
  • Trang Web Code5s => http://code5s.com/xml/xsl-v-xslt.html
Facebook Comments
Đánh giá bài viết

Bạn thích bài viết này chứ?
Đăng ký để nhận những bài viết thú vị như thế hàng tuần.

Đừng sợ thất bại, chỉ sợ việc dậm chân tại chỗ

TÌM VIỆC
Bình luận