繁花不似錦
2022-10-27 16:01:36
使用賽普拉斯自動化一些測試,我發(fā)現(xiàn)了這個問題。我們向客戶提出了許多問題,這些問題將根據(jù)之前的答案一一出現(xiàn)。下一個問題(例如答案的類型)在顯示之前將是未知的。我把這個留在這里作為一個例子,其中每個“div”(不是“rootDiv”)都是一個問題,并且它們僅在前一個得到響應(yīng)時顯示。 <div class="rootDiv"> <div class="type1"> <div class="type1b"> <button class="button1"> <button class="button1"> </div> </div> <div class="type2"> <div class="type2b"> <button class="button2"> <button class="button2"> <button class="button2"> <button class="button2"> </div> </div> <div class="type1"> <div class="type1b"> <button class="button1"> <button class="button1"> </div> </div> . . . <div class="typeX"> <div class="typeXb"> <button class="buttonX"> <button class="buttonX"> <button class="buttonX"> <button class="buttonX"> </div> </div> </div>所以我面臨的問題是:有沒有辦法訪問“rootDiv”中的最后一個“div”,檢查它的類并基于它點擊任何按鈕?有沒有辦法讓最后一個“div”的按鈕上寫上“文本”?有沒有辦法擁有一個元素列表(在這種情況下是按鈕)并遍歷它們?有很多選項可以解決它,主要問題取決于如何獲得這些元素
1 回答

呼啦一陣風(fēng)
TA貢獻(xiàn)1802條經(jīng)驗 獲得超6個贊
有沒有辦法訪問“rootDiv”中的最后一個“div”,檢查它的類并基于它點擊任何按鈕?
可以訪問 'rootDiv': 中的最后一個 'div' cy.get('.rootDiv div').last()
。然而,檢查類然后根據(jù)類的值執(zhí)行操作是一個壞主意,因為它是條件測試,而賽普拉斯并不是真正為它而生的。不過,如果你真的需要這種態(tài)度(沒有其他更好的方法),我認(rèn)為這是可行的。
有沒有辦法讓最后一個“div”的按鈕上寫上“文本”?
是的,可以獲得最后一個 div 的“文本”。cy.get('.rootDiv div').last().invoke('text').then((textOnTheButton) => {console.log(textOnTheButton})
3.有沒有辦法擁有一個元素列表(在這種情況下是按鈕)并遍歷它們?
要獲得所有按鈕,您只需要cy.get(button)
. 如果您想使用索引遍歷所有這些,您可以使用 for 循環(huán)和eq(),但它可能不是所有情況下最好/最有效的解決方案。
添加回答
舉報
0/150
提交
取消