Tôi muốn chọn tên liên hệ từ mã này, mặc dù đôi khi khi tên trống, tôi nhận được phần tử [li] sau đây là văn bản địa chỉ email, nó sẽ để trống khi không tìm thấy tên. đang sử dụng mã này
name = driver.switchTo[].window[child_window].findElement[By.cssSelector["aside.reply-flap.js-captcha ul > li:nth-child[1] p"]].getText[];
tôi biết rằng nếu tôi đang sử dụng jsoup thì tôi có thể sử dụng có chứa [tên liên hệ. ] làm cách nào để sử dụng có chứa trong selen?
Tôi đã thử một cái gì đó như
h1[contains[text[]='contact name:']]
và nó không hoạt động chút nào
điểm. 0
câu trả lời được chấp nhận
Để lấy văn bản từ
thẻ ngay bên dưới
thẻ có văn bản làm tên liên hệ bằng cách sử dụng chứa bạn có thể sử dụngxpath
sau. name = driver.switchTo[].window[child_window].findElement[By.xpath["//aside[@class='reply-flap js-captcha']/ul/li/h1[contains[text[],'contact name:']]//following::p[1]"]].getText[];
Ghi chú. Các. chứa lớp giả không hoạt động như một CSS theo Thông số kỹ thuật. Ở đây bạn có thể tìm thấy một cuộc thảo luận chi tiết
Xác định vị trí các phần tử là bước cơ bản nhất trong tự động kiểm tra web. Có nhiều cách để QA có thể xác định vị trí các phần tử. Đặc biệt, người dùng Selenium cần phải thành thạo trong việc sử dụng các chiến lược định vị khác nhau để xác định các phần tử web. Đây là bước đầu tiên để chạy bất kỳ thử nghiệm tự động nào vì các tập lệnh thử nghiệm phải xác định phần tử mà nó phải tương tác
Tham khảo hướng dẫn chi tiết này về Bộ định vị trong Selenium để tìm hiểu thêm về các chiến lược định vị khác nhau trong Selenium
Trong một số trường hợp, các nhà phát triển web có xu hướng phân loại các thành phần web bằng tên lớp hoặc ID giống hệt nhau. Điều này có thể dẫn đến kiểm tra không thành công nếu WebDriver không thể định vị một phần tử web nhất định
Trong những trường hợp như vậy, các kỹ sư QA có thể xác định vị trí phần tử bằng cách sử dụng văn bản hiển thị trên màn hình tương ứng với phần tử web cụ thể đó. Điều này có thể thực hiện được bằng cách sử dụng phương pháp Tìm phần tử theo văn bản bằng bộ định vị Xpath
Mẹo chuyên nghiệp. Bạn muốn tìm hiểu sâu hơn về triển khai Selenium trên BrowserStack với các khóa học tương tác và bài tập trong phòng thí nghiệm miễn phí?Visit Test University
Chạy thử nghiệm Selenium miễn phí trên đám mây thiết bị thực
Hãy xem xét một ví dụ mô tả cách tìm một phần tử bằng văn bản trong Selenium
text[] và chứa các phương thức
Trước ví dụ, chúng ta hãy thu thập hiểu biết cơ bản về hai phương pháp sau
- chữ[]. Một phương thức tích hợp trong Selenium WebDriver được sử dụng với bộ định vị XPath để định vị một phần tử dựa trên giá trị văn bản chính xác của nó
Thí dụ. //*[ text[] = ‘Bắt đầu miễn phí’ ]- chứa[]. Tương tự như phương thức text[], contains[] là một phương thức tích hợp khác được sử dụng để xác định vị trí một phần tử dựa trên khớp văn bản một phần
Ví dụ: nếu chúng ta cần định vị một nút có nội dung “Bắt đầu miễn phí”, thì có thể định vị nút đó bằng cách sử dụng dòng mã sau với Xpath
Thí dụ. //*[ chứa [văn bản[], ‘Bắt đầu’ ] ]
Phương pháp cần thiết để xác định vị trí một phần tử dựa trên khớp văn bản một phần là gì?
chứa[]
chữ[]
Bạn có biết không. Sự khác biệt giữa findElement và findElements?
Ví dụ
Hãy xem xét một kịch bản đơn giản
- Khởi chạy trình duyệt Chrome
- Điều hướng đến trang web của BrowserStack
- Định vị CTA có giá trị văn bản 'Bắt đầu miễn phí' bằng phương thức XPath text[]
Mã để định vị CTA bằng phương thức text[] như sau
import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; public class Match{ public static void main[String[] args] { System.setProperty[""]; WebDriver driver = new ChromeDriver[]; String url = "/browserstack.com”; driver.get[url]; driver.manage[].timeouts[].implicitlyWait[10, TimeUnit.SECONDS]; // Locating element with text[] WebElement e = driver.findElement[By.xpath["//*[text[]='Get started free']"]]; System.out.println["Element with text[]: " + e.getText[] ]; driver.quit[]; } }
Tương tự, các QA có thể định vị cùng một nút CTA bằng cách khớp một phần văn bản bằng phương thức chứa []. Đoạn mã trên vẫn giữ nguyên ngoại trừ phương thức xác định vị trí phần tử
Chạy thử nghiệm Selenium miễn phí trên đám mây thiết bị thực
Thay thế phương thức text[] bằng đoạn mã sau
// located element with contains[] WebElement m = driver.findElement [By.xpath ["//*[contains[text[],'Get started ']]"]];
Phương pháp trên sẽ định vị CTA “Bắt đầu miễn phí” dựa trên đối sánh một phần văn bản được thực hiện với chuỗi 'Bắt đầu'
Mọi người cũng đọc. Core Selenium WebElement Các lệnh mà mọi nhà phát triển nên biết
Như đã đề cập trước đó, để tự động hóa thử nghiệm thành công, việc thử nghiệm các yếu tố web mục tiêu là vô cùng quan trọng. Để làm như vậy, các kỹ sư QA phải có khả năng sử dụng các chiến lược định vị khác nhau. Phần tử tìm Selenium theo phương thức văn bản có thể hữu ích cho các QA đang tìm cách thực hiện lại các kiểm tra không thành công bằng cách định vị các phần tử chính xác dựa trên văn bản của nó
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ý miễn phí, chọn kết hợp thiết bị-trình duyệt-HĐH và bắt đầu chạy thử nghiệm
Tìm hiểu thêm. Bộ chọn CSS để xác định vị trí các phần tử web
Tìm hiểu thêm. Bộ chọn CSS để xác định vị trí các phần tử web
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 SeleniumNhững bài viết liên quan
findElement so với findElements trong Selenium
Tìm hiểu cách các phương pháp như findElement vs findElements trong Selenium được sử dụng để định vị Web Eleme cụ thể
Tìm hiểu thêm
Bộ chọn CSS trong Selenium. Xác định vị trí các yếu tố với các ví dụ
Tìm hiểu cách sử dụng CSS Selector trong tập lệnh Selenium cho các thử nghiệm tự động của bạn với năm loại CSS Select
Tìm hiểu thêm
Kiểm tra trình duyệt chéo bằng Playwright. hướng dẫn
Trong hướng dẫn này để kiểm tra trình duyệt chéo bằng Playwright, chúng ta sẽ thực hiện từng bước để thiết lập Playwri