XPath trong Selenium Python là gì?

Hiện tại, ai cũng biết rằng Selenium là công cụ kiểm thử tự động được sử dụng thường xuyên nhất. Với sự đa dạng của các tính năng, nó tạo điều kiện cho các chức năng khác nhau. Một trong số đó là việc sử dụng bộ định vị để tìm các phần tử web khi kiểm tra trang web. Trong số các công cụ định vị khác nhau, XPath đặc biệt hữu ích

Bài viết này sẽ kiểm tra Xpath và cách sử dụng nó để tìm các phần tử web trong thử nghiệm Selenium tự động

chủ đề dưới đây được đề cập trong bài viết này

Ghi chú. Vui lòng tham khảo Locators trong Selenium trước khi tiếp tục với bài viết này

Giới thiệu về XPath

XPath là một ngôn ngữ để truy vấn các tài liệu XML. Có thể sử dụng trên cả tài liệu HTML và XML, nó cho phép người kiểm tra điều hướng qua cấu trúc XML của bất kỳ tài liệu nào. Nó bao gồm một biểu thức đường dẫn cùng với một số điều kiện

Cú pháp XPath

Dưới đây là cú pháp cho Xpath

Xpath =//tagname[@Attribute=’value’]

trong đó

  1. //. Được sử dụng để chọn nút hiện tại
  2. tên thẻ. Tên thẻ của một nút cụ thể
  3. @. Được sử dụng để chọn thuộc tính select
  4. Thuộc tính. Tên thuộc tính của nút
  5. Giá trị. Giá trị của thuộc tính

Để tìm hiểu sâu hơn về các nguyên tắc cơ bản của XPath, hãy nghiên cứu bài viết này về Các cách hiệu quả để sử dụng XPath trong Selenium

Trước khi khám phá các hàm XPath, hãy xem một ví dụ đơn giản để hiểu

Cách tìm các phần tử bằng XPath trong Selenium. Thí dụ

Ví dụ này sẽ khởi chạy Google Chrome và điều hướng đến yahoo. com để tạo tài khoản yahoo. Mục đích là xác định vị trí các trường bằng XPath

  1. Chuyển đến tab Tên và nhấp chuột phải >> Kiểm tra
  2. Khi kiểm tra phần tử web, nó sẽ hiển thị thẻ đầu vào và các thuộc tính như lớp và id
  3. Sử dụng id và các thuộc tính này để xây dựng XPath, lần lượt, sẽ định vị trường tên

Hãy viết XPath trong tab phần tử

Ghi chú. Sử dụng Ctrl+F để viết XPath trong tab phần tử như hình bên dưới

Như đã thấy ở trên, một XPath đơn giản được sử dụng để định vị tab FirstName. Dựa trên cú pháp XPath, trước tiên hãy sử dụng // có nghĩa là bất kỳ đâu trong tài liệu. Ở đây, đầu vào là tên thẻ có thuộc tính id với giá trị “usernamereg-firstname”

Khi viết XPath, nó đã đánh dấu phần tử ngụ ý rằng phần tử cụ thể này được định vị bằng XPath

Ghi chú. Người ta cũng có thể định vị cùng một phần tử bằng cách sử dụng thuộc tính tên vì nó cũng có giá trị định vị cho thẻ tên. Sử dụng bộ định vị tên, XPath là. // đầu vào{@name=”firstname”]

Tham khảo ảnh chụp nhanh bên dưới để rõ ràng

cũng đọc. Cách tìm phần tử theo văn bản trong Selenium. hướng dẫn

Bây giờ, hãy thử tự động hóa việc này bằng Selenium. Đây là chương trình Java được viết bằng Eclipse cho cùng một

import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class XPathexample {
public static void main[String[] args] {
System.setProperty["webdriver.chrome.driver", "Your-Chrome-Driver-Path"]; // Provide the path to your chrome driver. Make sure your chrome driver version is updated.
WebDriver driver = new ChromeDriver[];
driver.manage[].window[].maximize[];
driver.manage[].deleteAllCookies[];
driver.manage[].timeouts[].pageLoadTimeout[40, TimeUnit.SECONDS];
driver.manage[].timeouts[].implicitlyWait[30, TimeUnit.SECONDS];
driver.get["//login.yahoo.com/account/create"];
driver.findElement[By.xpath["//input[@id='usernamereg-firstName']"]].sendKeys["Your-Name"]; // Will send values to First Name tab
}
}

Khi thực thi đoạn mã trên, Chromedriver sẽ khởi chạy Google Chrome, điều hướng đến trang đăng ký Yahoo và nhập giá trị cho tab tên như hình bên dưới

Tương tự, điền vào tất cả các chi tiết và tìm các phần tử bằng XPath trong Selenium

import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class XPathexample {
public static void main[String[] args] {
System.setProperty["webdriver.chrome.driver", "Your-Chrome-Driver-Path"]; // Provide the path to your chrome driver. Make sure your chrome driver version is updated.
WebDriver driver = new ChromeDriver[];
driver.manage[].window[].maximize[];
driver.manage[].deleteAllCookies[];
driver.manage[].timeouts[].pageLoadTimeout[40, TimeUnit.SECONDS];
driver.manage[].timeouts[].implicitlyWait[30, TimeUnit.SECONDS];
driver.get["//login.yahoo.com/account/create"];
driver.findElement[By.xpath["//input[@id='usernamereg-firstName']"]].sendKeys["Your-Name"]; // Will send values to First Name tab
driver.findElement[By.xpath["//input[@id='usernamereg-lastName']"]].sendKeys["Your-Last_name"]; //xpath for last name box
driver.findElement[By.xpath["//input[@id='usernamereg-yid']"]].sendKeys["email@yahoo.com"]; //xpath for email box
driver.findElement[By.xpath["//input[@id='usernamereg-phone']"]].sendKeys["123456789"]; //xpath for phone number box
driver.findElement[By.xpath["//select[@id='usernamereg-month']"]].click[]; //xpath for usermonth box
driver.findElement[By.xpath["//input[@id='usernamereg-day']"]].sendKeys["01"]; //xpath for userday box
driver.findElement[By.xpath["//input[@id='usernamereg-year']"]].sendKeys["1999"];// xpath for user year
driver.findElement[By.xpath["//button[@id='reg-submit-button']"]].click[];// xpath for submit button
}
}

Khi thực hiện chương trình trên, nó sẽ điền vào tất cả các chi tiết và nhấn nút Tiếp tục để hoàn thành việc gửi biểu mẫu

Chạy thử nghiệm Selenium miễn phí trên các thiết bị thực

Mặc dù bài đăng này đã thảo luận về nhiều cách khác nhau để xác định vị trí các phần tử trên trang web bằng cách sử dụng trình định vị XPath trong Selenium Webdriver, người ta nên sử dụng dao cạo của Occam – các tùy chọn hợp lý và đơn giản nhất trong khi chọn các phần tử để đảm bảo việc làm lại tối thiểu trong trường hợp thiết kế lại trang

Hãy thử chạy mã chi tiết ở trên bằng Selenium. Hãy nhớ rằng các bài kiểm tra Selenium phải được chạy trên đám mây thiết bị thực để có kết quả hoàn toàn chính xác. Lưới Selenium trên đám mây của BrowserStack gồm hơn 2000 trình duyệt và thiết bị thực cho phép người kiểm tra tự động kiểm tra giao diện người dùng trực quan trong điều kiện người dùng thực. Chỉ cần đăng ký, chọn kết hợp thiết bị-trình duyệt-HĐH và bắt đầu chạy thử nghiệm miễn phí

Kiểm tra tự động hóa Selenium Trình quản trị trang web Selenium

Bài đăng này có hữu ích không?

Vâng, cảm ơn Không thực sự

Chúng tôi rất tiếc khi biết điều đó. Hãy chia sẻ phản hồi của bạn để chúng tôi có thể làm tốt hơn

Cảm ơn rất nhiều phản hồi của bạn

thẻ

Kiểm tra tự động hóa Selenium Trình quản trị trang web Selenium

Những bài viết liên quan

SendKeys trong Selenium WebDriver

Tìm hiểu cách phương thức SendKeys[] đóng vai trò quan trọng trong việc tự động hóa các trường hợp thử nghiệm cho các tương tác biểu mẫu bằng cách sử dụng

Tìm hiểu thêm

Cách tìm phần tử theo văn bản trong Selenium. hướng dẫn

Bài viết này nhằm mục đích giải thích cách một người có thể tìm thấy các phần tử trong Selenium dựa trên văn bản của nó bằng văn bản [

Tìm hiểu thêm

5 câu hỏi cần đặt ra trước mỗi lần phát hành phần mềm

Có một số điều quan trọng hơn trong phát triển phần mềm so với danh sách kiểm tra phát hành phần mềm. Tìm thấy

XPath trong Selenium là gì?

Xpath trong Selenium là gì? . Nó cho phép người kiểm tra điều hướng qua cấu trúc XML của bất kỳ tài liệu nào, cấu trúc này có thể được sử dụng trên cả tài liệu HTML và XML. a Selenium technique to navigate through a page's HTML structure. It enables testers to navigate through any document's XML structure, which can be used on both HTML and XML documents.

XPath ở đâu trong python Selenium?

Cách tìm phần tử bằng XPath trong Selenium. Ví dụ .
Chuyển đến tab Tên và nhấp chuột phải >> Kiểm tra
Khi kiểm tra phần tử web, nó sẽ hiển thị thẻ đầu vào và các thuộc tính như lớp và id
Sử dụng id và các thuộc tính này để xây dựng XPath, lần lượt, sẽ định vị trường tên

Việc sử dụng XPath trong python là gì?

DOM là cấu trúc dạng cây, trong đó mỗi phần tử đại diện cho một nút, có đường dẫn đến nút cha và nút con. XPath cung cấp cho chúng tôi một ngôn ngữ để duyệt nhanh qua cây này . Và, giống như RegEx, chúng tôi có thể thêm logic vào lựa chọn nút của mình để làm cho các truy vấn của chúng tôi mạnh mẽ hơn.

Ví dụ XPath là gì?

XPath sử dụng biểu thức đường dẫn để chọn nút hoặc tập hợp nút trong tài liệu XML . Các biểu thức đường dẫn này trông rất giống các biểu thức bạn thấy khi làm việc với hệ thống tệp máy tính truyền thống. Các biểu thức XPath có thể được sử dụng trong JavaScript, Java, Lược đồ XML, PHP, Python, C và C++ và nhiều ngôn ngữ khác.

Chủ Đề