簡體   English   中英

如何在賽普拉斯中獲取具有動態選擇器的元素

[英]How to get an element that has a dynamic selector in Cypress

我的腳本有一個按鈕,它指向一個外部站點,我需要在其中輸入一些信息。

我無法找到 select 該字段的方法,因為它位於 iframe 中,並且還具有動態生成的 ID。 該 ID 末尾有 2 個始終一致的字符。

到目前為止,我已經嘗試過:

cy.get('#*_2'); --> 嘗試使用通配符單擊末尾有 _2 但不起作用的元素

我試過使用cy.get('input[data-collect-as="input"]') --> 它也找不到這個元素。

任何幫助,將不勝感激。

在此處輸入圖像描述

簡寫 id 選擇器#myid只能與確切值一起使用,但id仍然是一個屬性,因此您可以使用帶有通配符的屬性選擇器

cy.get('[id$="_2"]')         // $= means value ending with 

有很多變化,請參閱 選擇器 - 屬性


您嘗試的另一種方法應該像這樣工作

cy.get('div[data-collect-as="input"] input') 

這將獲得一個帶有祖先div[data-collect-as="input"]的子input - 表示兩個單獨元素的空間,關系是祖先 -> 后代。

您可以添加更多精度

cy.get('div[data-collect-as="input"] > div.wrp > input') 

其中>表示父子關系。

您也可以使用模式屬性值。

cy.get('input[pattern="[0=9]*"]')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM