Rate this post

XPath là một ngôn ngữ được sử dụng để định vị các nút trong tài liệu XML.

XPath có thể được sử dụng để thay thế khi bạn không có thuộc tính id hoặc tên phù hợp cho phần tử bạn muốn định vị.

XPath cho phép bạn chọn các phần tử, thuộc tính riêng lẻ và một số phần khác của tài liệu XML để chỉ định vị trí của một phần tử web cụ thể.

Trong WebDriver, cú pháp Java để định vị các phần tử thông qua XPath có thể được viết như sau:

findElement (By.xpath ( "XPath" ));  

Tuy nhiên, có nhiều cách khác nhau để viết XPath động như:

Xác định element trong Webdriver sử dụng XPath- Sử dụng một dấu gạch chéo

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng một dấu gạch chéo.

Cơ chế Single Slash còn được gọi là cơ chế tìm kiếm các phần tử bằng cách sử dụng Absolute XPath. Single Slash được sử dụng để tạo XPath với XPath tuyệt đối, tức là XPath sẽ được tạo để bắt đầu lựa chọn từ nút tài liệu / nút Bắt đầu / nút Cha.

Lưu ý: XPath Absolute không được khuyến khích vì nó chiếm vị trí XPath hoàn chỉnh và nếu vị trí của phần tử web bị thay đổi hoặc nó thuộc về một số gốc khác thì XPath sẽ không thể định vị phần tử mong muốn.

Cú pháp để định vị các phần tử thông qua XPath Absolute được viết như sau:

//html/body/tag1[index]/tag2[index]/…/tagN[index]  

Sử dụng Single Slash / Absolute XPath, chúng ta có thể viết mã Java cùng với vị trí XPath động như:

findElement (By.xpath ( “html / body / div [1] / div [2] / div [2] / div [1] / form / div [1] / div / div [1] / div / div / input [1] ” )); 

Xem thêm Tìm hiểu về Selenium & thuật ngữ cơ bản Selenium

Xác định element trong Webdriver sử dụng XPath- Sử dụng Double Slash

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng Double Slash.

Cơ chế Double Slash còn được gọi là cơ chế tìm kiếm phần tử bằng XPath tương đối. Dấu gạch chéo kép được sử dụng để tạo XPath với đường dẫn tương đối, tức là XPath sẽ được tạo để bắt đầu lựa chọn từ bất kỳ đâu trong tài liệu. – Tìm kiếm chuỗi trước trong toàn bộ trang (DOM).

Lưu ý: Double Slash được khuyến nghị khi bạn không có thuộc tính id hoặc tên phù hợp cho phần tử bạn muốn định vị.

Sử dụng Double Slash / Relative XPath, chúng ta có thể viết mã Java cùng với vị trí XPath động như sau:

findElement (By.xpath ( “// form / div [1] / div / div [1] / div / div / input [1]” ));   

Xác định element html trong Selenium webdriver sử dụng XPath- attribute

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng Thuộc tính Đơn.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng định vị hộp Văn bản của Công cụ Tìm kiếm Google bằng XPath-Sử dụng Thuộc tính Đơn.

Thực hiện theo các bước dưới đây để tìm hộp văn bản được cung cấp trên trang chủ của Công cụ tìm kiếm của Google.

  • Mở URL: https://www.google.com.vn/ trong trình duyệt Firefox của bạn
  • Nhấp chuột phải vào Hộp văn bản trên trang web mẫu và chọn Kiểm tra phần tử
  • Nó sẽ khởi chạy một cửa sổ chứa tất cả các mã cụ thể liên quan đến sự phát triển của hộp văn bản.
  • Nhấp chuột phải vào mã được đánh dấu và di chuột đến tùy chọn Sao chép.
  • Chọn Sao chép> XPath

Lưu ý: Các trình duyệt như Firefox theo mặc định cung cấp vị trí XPath với một thuộc tính duy nhất.

Cú pháp để định vị các phần tử thông qua XPath- Thuộc tính đơn có thể được viết như sau:

// <thẻ HTML> [@ property_name = ‘thuộc tính_value’]  

hoặc là

// * [@ property_name = ‘thuộc tính_value’]  

Lưu ý: ‘*’ sau dấu gạch chéo kép là để khớp bất kỳ thẻ nào với văn bản mong muốn.

Sao chép vị trí XPath động mong muốn và dán vào giữa mã Java để định vị các phần tử web thông qua XPath:

findElement (By.xpath ( “// * [@ id =” lst-ib “]” )); 

Xem thêm Kiểm tra lỗ hổng bảo mật XPath Injection

Xác định element html trong Selenium webdriver sử dụng XPath- nhiều attribute

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng nhiều thuộc tính.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng xác định hộp Văn bản của Công cụ Tìm kiếm Google bằng XPath-Sử dụng Nhiều Thuộc tính.

Thực hiện theo các bước dưới đây để tìm hộp văn bản được cung cấp trên trang chủ của Công cụ tìm kiếm của Google.

  • Mở URL: https://www.google.com.vn/ trong trình duyệt Firefox của bạn
  • Nhấp chuột phải vào Hộp văn bản trên trang web mẫu và chọn Kiểm tra phần tử
  • Nó sẽ khởi chạy một cửa sổ chứa tất cả các mã cụ thể liên quan đến sự phát triển của hộp văn bản.
  • Ghi lại id và Thuộc tính lớp của nó.

Cú pháp để định vị các phần tử thông qua XPath- Multiple Attribute có thể được viết như sau:

// <thẻ HTML> [@ property_name1 = ‘property_value1’] [@ property_name2 = ‘thuộc tính_value2]  

hoặc là

// * [@ property_name1 = ‘property_value1’] [@ property_name2 = ‘thuộc tính_value2]  

Sử dụng XPath-Multiple, chúng ta có thể viết mã Java cùng với vị trí XPath động như:

findElement (By.xpath (" // * [@ id = ' lst-ib '] [@ class =' gsfi lst-d-f '] "));  

Xác định element html trong Seledium webdriver sử dụng XPath- toán tử AND

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng Và.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng xác định hộp Văn bản của Công cụ Tìm kiếm Google bằng XPath- Sử dụng Và.

Thực hiện theo các bước dưới đây để tìm hộp văn bản được cung cấp trên trang chủ của Công cụ tìm kiếm của Google.

  • Mở URL: https://www.google.com.vn/ trong trình duyệt Firefox của bạn
  • Nhấp chuột phải vào Hộp văn bản trên trang web mẫu và chọn Kiểm tra phần tử
  • Nó sẽ khởi chạy một cửa sổ chứa tất cả các mã cụ thể liên quan đến sự phát triển của hộp văn bản.
  • Ghi lại id và Thuộc tính lớp của nó.

Cú pháp để định vị các phần tử thông qua XPath- Sử dụng And có thể được viết như sau:

// <thẻ HTML> [@ property_name1 = ‘property_value1’ and @ thuộc tính_name2 = ‘thuộc tính_value2]  

hoặc là

// * [@ property_name1 = ‘property_value1’ and @ property_name2 = ‘thuộc tính_value2]  

Sử dụng XPath-And, chúng ta có thể viết mã Java cùng với vị trí XPath động dưới dạng:

findElement (By.xpath ( "// * [@ id = 'lst-ib' and @ class = 'gsfi lst-d-f']" ));  

Xem thêm Tấn công Blind XPath Injection

Xác định element html trong Selenium sử dụng XPath- toán tử OR

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng Hoặc.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng xác định hộp Văn bản của Công cụ Tìm kiếm Google bằng XPath- Sử dụng Hoặc.

Thực hiện theo các bước dưới đây để tìm hộp văn bản được cung cấp trên trang chủ của Công cụ tìm kiếm của Google.

  • Mở URL: https://www.google.com.vn/ trong trình duyệt Firefox của bạn
  • Nhấp chuột phải vào Hộp văn bản trên trang web mẫu và chọn Kiểm tra phần tử
  • Nó sẽ khởi chạy một cửa sổ chứa tất cả các mã cụ thể liên quan đến sự phát triển của hộp văn bản.
  • Ghi lại id và Thuộc tính lớp của nó.

Cú pháp để định vị các phần tử thông qua XPath- Sử dụng Hoặc có thể được viết như sau:

// <thẻ HTML> [@ property_name1 = ‘property_value1’ or @ property_name2 = ‘thuộc tính_value2]  

hoặc là

// * [@ property_name1 = ‘property_value1’ or @ property_name2 = ‘thuộc tính_value2’]  

Sử dụng XPath-Hoặc, chúng ta có thể viết mã Java cùng với vị trí XPath động dưới dạng:

findElement (By.xpath ( "// * [@ id = 'lst-ib' or @ class = 'gsfi lst-d-f']" ));  

Xác định element html trong selenium webdriver sử dụng XPath- text ()

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng phương thức text ().

“text () method” được sử dụng để xác định một phần tử dựa trên văn bản có sẵn trên trang web.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng tìm văn bản “Google cung cấp trong” trên trang mặc định của công cụ Tìm kiếm của Google.

Cú pháp để định vị các phần tử thông qua XPath- Sử dụng phương thức text () có thể được viết như sau:

//*[text()=’Google offered in’] 

Sử dụng phương thức XPath- text (), chúng ta có thể viết mã Java cùng với vị trí XPath động như sau:

findElement(By.xpath(“//*[text()=’Google offered in’)]”));  

Xác định element html trong Selenium Webdriver sử dụng XPath- last ())

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng phương thức last ().

“last () method” chọn phần tử cuối cùng (thuộc loại đã đề cập) trong số tất cả phần tử đầu vào hiện có.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng tìm trường văn bản cuối cùng trên trang đăng ký Google, tức là trường “Xác nhận mật khẩu”.

Sử dụng phương thức XPath- last (), chúng ta có thể viết mã Java cùng với vị trí XPath động như sau:

findElement (By.xpath ( “(// input [@ type = ‘text’]) [last ()]” ))

Xác định element html trong Selenium webdriver sử dụng XPath- start-with ())

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng phương thức XPath- start-with ().

“started-with ()” được sử dụng để xác định một phần tử, khi chúng ta đã quen thuộc với giá trị thuộc tính (bắt đầu bằng văn bản được chỉ định) của một phần tử.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng xác định hộp Văn bản của Công cụ Tìm kiếm Google bằng XPath- Sử dụng phương thức start-with ().

Thực hiện theo các bước dưới đây để tìm hộp văn bản được cung cấp trên trang chủ của Công cụ tìm kiếm của Google.

  • Mở URL: https://www.google.co.in/ trong trình duyệt Firefox của bạn
  • Nhấp chuột phải vào Hộp văn bản trên trang web mẫu và chọn Kiểm tra phần tử
  • Nó sẽ khởi chạy một cửa sổ chứa tất cả các mã cụ thể liên quan đến sự phát triển của hộp văn bản.
  • Ghi lại Thuộc tính id của nó.

Cú pháp để định vị các phần tử thông qua XPath- Sử dụng phương thức start-with () có thể được viết như sau:

// <thẻ HTML> [bắt đầu bằng (@ thuộc tính_name, ‘thuộc_tính_giá_trị’)]   

hoặc là

// * [bắt đầu bằng (@ thuộc tính_tên, ‘giá_trị_tính_hợp’)]  

Sử dụng phương thức XPath- start-with, chúng ta có thể viết mã Java cùng với vị trí XPath động như sau:

findElement (By.xpath ( "// * [start-with (@ id, 'lst')]" ));

Xác định element html trong Selenium sử dụng XPath- contains ()

Trong phần này, bạn sẽ học cách định vị một phần tử web cụ thể bằng XPath- Sử dụng phương thức chứa ().

“contains ()” được sử dụng để xác định một phần tử, khi chúng ta đã quen thuộc với một số phần của giá trị thuộc tính của một phần tử.

Hãy để chúng tôi xem xét một ví dụ trong đó chúng tôi sẽ cố gắng xác định hộp Văn bản của Công cụ Tìm kiếm Google bằng XPath- Sử dụng phương thức chứa ().

Thực hiện theo các bước dưới đây để tìm hộp văn bản được cung cấp trên trang chủ của Công cụ tìm kiếm của Google.

  • Mở URL: https://www.google.co.in/ trong trình duyệt Firefox của bạn
  • Nhấp chuột phải vào Hộp văn bản trên trang web mẫu và chọn Kiểm tra phần tử
  • Nó sẽ khởi chạy một cửa sổ chứa tất cả các mã cụ thể liên quan đến sự phát triển của hộp văn bản.
  • Ghi lại Thuộc tính id của nó.

Cú pháp để định vị các phần tử thông qua XPath- Sử dụng phương thức chứa () có thể được viết như sau:

//<HTML tag>[contains(@attribute_name,’attribute_value’)]

hoặc là

//*[contains(@attribute_name,’attribute_value’)]  

Sử dụng phương thức XPath- contains (), chúng ta có thể viết mã Java cùng với vị trí XPath động như:

findElement(By.xpath("//*[contains(@id,'lst-ib')]"));  

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

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 *

Contact Me on Zalo
Call now