Làm cách nào để viết XPath bằng bộ chọn CSS trong Selenium?

Để thực hiện bất kỳ thao tác nào trên phần tử như nhấp chuột hoặc nhập vào phần tử, chúng ta cần xác định vị trí phần tử đó. Rất đơn giản để định vị các phần tử nếu HTML DOM có 'id' hoặc 'name' và chúng là những công cụ định vị an toàn nhất để sử dụng. Như chúng ta biết, tốt hơn hết là sử dụng ID và Tên để xác định vị trí các phần tử chắc chắn sẽ hoạt động. Bạn không cần tìm kiếm bất kỳ công cụ định vị nào khác nếu có ID hoặc tên duy nhất trong ứng dụng của bạn

Nhưng với các ứng dụng được thiết kế bằng JavaScript Frameworks hiện đại như Angular, React và Vue. js không có phần tử web phù hợp trong DOM

Điều rất quan trọng là làm cho các kịch bản thử nghiệm trở nên mạnh mẽ với các bộ định vị đáng tin cậy không bị hỏng cho đến khi các thay đổi được thực hiện. Trong nhiều trường hợp như thế này, chúng tôi phụ thuộc vào việc định vị các phần tử bằng CSS hoặc bằng XPath

Mặc dù chúng tôi có một số trình cắm trình duyệt để tạo bộ chọn xpath hoặc css, nhưng chúng không hữu ích nhiều trong các ứng dụng thời gian thực

Hãy để chúng tôi tìm kiếm các ví dụ xpath để sử dụng ID và Tên hiệu quả với các kết hợp

Nếu html trông giống như bên dưới

Chúng ta có thể sử dụng như dưới đây

Trong xpath chúng ta có thể sử dụng theo nhiều cách khác nhau

1. Với ID. - //input[@id='email'] hoặc chúng ta cũng có thể sử dụng như //*[@id='email']

2. Với Tên - //input[@name='email'] hoặc chúng ta cũng có thể sử dụng như //*[@name='email']

Trong css chúng ta có thể sử dụng như dưới đây

1. Với ID - css=input#email hoặc css=#email
2. Với Tên - css=input[name=email] hoặc css=[name=email]

Tất cả các cú pháp trên đều đơn giản. Chúng tôi có thể trực tiếp sử dụng chúng bằng cách sử dụng bộ định vị id hoặc tên

Xác định phần tử bằng nhiều thuộc tính

Ở đây, sử dụng xpath/Css, chúng tôi có thể kết hợp hai bộ định vị khi cần, hãy xem cách chúng tôi có thể đạt được

sử dụng xpath. -

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
0, ở đây đầu tiên nó sẽ kiểm tra id và sau đó nó sẽ kiểm tra lần thứ hai

Cũng dựa trên chỉ mục, chúng ta có thể định nghĩa đường dẫn là

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
1

Chúng ta cũng có thể xác định bằng cách sử dụng thuộc tính giá trị

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
2

Tương tự với Css

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
3

Chúng ta cũng có thể định nghĩa xpath với thuộc tính 'Style' xpath

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
4

Cách truy cập các phần tử con trực tiếp bằng xpath

Một đứa trẻ trong XPATH được biểu thị bằng dấu "/". Ví dụ XPATH cho các phần tử con.

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
5

Cách truy cập các phần tử Con bằng bộ chọn css

Trong CSS, đứa trẻ được biểu thị bằng "______1_______6". Các ví dụ css về một liên kết bên trong thẻ div có thể được xác định là

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
7

Và đôi khi, nếu phần tử không phải là con trực tiếp, có thể phần tử nằm trong phần tử khác. Trong những trường hợp như vậy, chúng tôi có thể sử dụng hai dấu gạch chéo để khớp với bất kỳ nút con nào cho xpath. Ví dụ cho xpath là

Check Our http://demo-test.com" class="btn btn-success">Demo Website!
8. Trong css, điều này rất đơn giản bằng cách sử dụng khoảng trắng. Ví dụ css cho con / con phụ là
Check Our http://demo-test.com" class="btn btn-success">Demo Website!
9

Cách đối sánh trên văn bản bằng bộ định vị CSS và Xpath

Bây giờ chúng ta hãy xem các ví dụ cho 'Văn bản'. Khi làm việc với văn bản, chúng ta sẽ có hai tình huống, một là "Chính xác" và một là "Chứa". Như tên mô tả, 'Chính xác' sẽ cố gắng tìm kết quả khớp chính xác và Chứa tìm kiếm nhiều kết quả khớp

Chúng ta có thể sử dụng như thế này //button[. ='Đăng nhập'] dưới dạng Xpath để tìm ra phần tử chứa chính xác 'Đăng nhập'

Nếu HTML như dưới đây

Check Our http://demo-test.com" class="btn btn-success">Demo Website!

Chúng tôi tìm phần tử bằng cách sử dụng xpath như //input[@id='email']0 hoặc //input[@id='email']0

Điều trên có thể được thực hiện bằng cách sử dụng css như //input[@id='email']2. Nhưng nếu bạn muốn khớp chính xác với văn bản thì chúng ta nên có một cái gì đó như //input[@id='email']3 hoặc //input[@id='email']4

Làm việc với Liên kết / thẻ neo

Các liên kết có thẻ neo, chúng ta có thể áp dụng giống như chúng ta đã áp dụng cho 'Văn bản', sự khác biệt duy nhất ở đây là chúng ta nên thêm thẻ neo

Chúng tôi chỉ có thể sử dụng là 'link=Quên mật khẩu của bạn?', sử dụng xpath chúng tôi nên sử dụng như //a[. ='Quên mật khẩu của bạn?']

Chúng tôi cũng có thể chỉ định một phần văn bản của liên kết là //a[contains(text(),'Forgot')]. Điều này cũng có thể được viết là //a[contains(. ,'Quên')]. Chúng tôi đã thay thế 'text()' bằng 'dot'

Trong Css, chúng tôi viết lại chúng thành //input[@id='email']5, nó sẽ tìm thấy neo đầu tiên có chứa 'Quên'

Đôi khi chúng tôi có thể cần làm việc với các URL có thuộc tính href. Xpath cũng có thể được sử dụng thay vì tìm văn bản liên kết //input[@id='email']6 và sử dụng Css //input[@id='email']7

Bạn có thể tìm hiểu thêm về XPath trong các hướng dẫn chi tiết về xpath và bộ chọn Css

  • ‹ Cài đặt ANT
  • Nhiều thử nghiệm với TestNG. XML ›

Hướng dẫn Selenium.  

Hướng dẫn Selenium

thẻ.  

Xpath

css

ví dụ css

Ví dụ Xpath

Bình luận

Đăng bởi pragx vào Thứ 5, 14/04/2016 - 00. 19

Bộ chọn CSS có hỗ trợ tính năng 'Chứa' trong Selenium không?

  • Đáp lại

Đăng bởi Gopal vào Thứ Hai, 29/08/2016 - 09. 32

Không trực tiếp nó sẽ không. Bạn có thể sử dụng JQuery để thay thế

  • Đáp lại

Đăng bởi Moumita vào Thứ Hai, 20/06/2016 - 06. 47

//a[contains(text(),'Delete')][2] làm cách nào để chuyển đổi cái này thành CSS?

  • Đáp lại

Đăng bởi Ryan vào Thứ Tư, 20/07/2016 - 00. 01


  • Alexandria, 2015

  • Glebe, 2037


làm thế nào để gettext tất cả thẻ li?
var allLocation = trình điều khiển. findElement(By. xpath("//li[chứa(@class, 'select2-selection__choice')]"));

  • Đáp lại

Đăng bởi Sujatha vào Thứ Bảy, 23/07/2016 - 02. 04

@Moumita, Đó là
css=a. chứa ('Xóa')

  • Đáp lại

Đăng bởi anitha vào Thứ Ba, 30/08/2016 - 01. 59

Làm tốt lắm, bạn có thể vui lòng làm cách nào chúng tôi có thể định vị tất cả các liên kết bằng xpath

  • Đáp lại

Đăng bởi Simranjeet vào Thứ Tư, 23/11/2016 - 03. 39

(Qua. cssSelector("a[href^='/']")

  • Đáp lại

Đăng bởi Rakesh vào Thứ Tư, 26/10/2016 - 05. 48

Làm cách nào tôi có thể chọn giá trị từ trình giữ chỗ nội dung thả xuống??

  • Đáp lại

Đăng bởi krishna chaitanya vào Thứ Hai, 12/06/2017 - 06. 44

chọn danh sách thả xuống và sử dụng phím gửi để gửi phần tử whick để nhấp và cuối cùng gửi phím enter, nó sẽ được chọn

  • Đáp lại

Đăng bởi neha vào Thứ Ba, 01/08/2017 - 04. 35

Nếu id, class, name không được đề cập cho xpath thì làm thế nào chúng ta viết xpath của mình mà không có những thứ đó?

  • Đáp lại

  • 1
  • 2
  • tiếp theo
  • Cuối cùng

Thêm nhận xét mới

Tên của bạn

Môn học

Nhận xét *

Thông tin thêm về định dạng văn bản

MÃ NGẪU NHIÊN

Câu hỏi này là để kiểm tra xem bạn có phải là khách truy cập của con người hay không và để ngăn việc gửi thư rác tự động

Làm cách nào để viết mã cho bộ chọn CSS trong Selenium?

Nhập “css=input[type='submit']” (giá trị định vị) trong Selenium IDE. Bấm vào nút Tìm. Nút “Đăng nhập” sẽ được tô sáng, xác minh giá trị của bộ định vị. Thuộc tính. Được sử dụng để tạo Bộ chọn CSS

Làm cách nào để chuyển đổi bộ chọn XPath thành CSS trong Selenium?

Hướng dẫn sử dụng .
Kéo và thả tệp của bạn hoặc sao chép và dán văn bản của bạn vào trình chỉnh sửa ở trên
Biểu thức Xpath của bạn được tự động chuyển thành CSS Selector
Nhấp vào nút "Tải xuống CSS" để tải xuống kết quả
Bạn cũng có thể sao chép Bộ chọn CSS vào khay nhớ tạm bằng cách nhấp vào nút "Sao chép vào khay nhớ tạm"

Bạn có thể sử dụng XPath trong CSS không?

Chúng ta có thể trực tiếp sử dụng chúng bằng cách sử dụng bộ định vị id hoặc tên. Ở đây sử dụng xpath / Css, chúng tôi có thể kết hợp hai bộ định vị khi cần thiết , hãy xem cách chúng tôi có thể đạt được. sử dụng xpath. - //*[@id='email' or @name='email'] , ở đây đầu tiên nó sẽ kiểm tra id và sau đó nó sẽ kiểm tra cái thứ hai.

Làm cách nào để chọn phần tử web bằng bộ chọn CSS?

Bước 1. Nhập “css=input#Email” tôi. e. giá trị định vị trong hộp mục tiêu trong Selenium IDE và nhấp vào nút Tìm . Lưu ý rằng hộp Văn bản Email sẽ được đánh dấu. Thẻ HTML – Đây là thẻ được sử dụng để biểu thị phần tử web mà chúng tôi muốn truy cập. # – Dấu thăng dùng để tượng trưng cho thuộc tính ID.