![](/img/trans.png)
[英]Protractor - Failed: stale element reference: element is not attached to the page document
[英]Protractor element is not attached to the page document
我正在為 Angular6 項目使用量角器,但我遇到了單擊元素的問題
場景我在一行中有一個元素列表(表格行),我想點擊每一行。
問題
我可以點擊第一個元素,但不能點擊下一個。 獲取以下錯誤消息。
元素未附加到頁面文檔
代碼我將每個循環用於循環元素並嘗試單擊每個元素
$$('.categories2 ').each(function(Careers, index) {
Careers.all(by.tagName('button')).get(1).click();
browser.driver.sleep(5000);
});
每次點擊都會導致頁面更改。 一旦頁面更改,selenium/protractor 將其視為另一個頁面,而不是$$('.categories2 ')
執行的頁面。
當您從$$('.categories2 ')
獲取下一個Careers
,它不屬於點擊后的新頁面,而是點擊前的頁面。 這就是not attached
報告的原因。
要解決您的問題,您需要在單擊后在每個頁面上執行 find $$('.categories2 ')
。
$('.categories2 ').count().then((cnt)->{
for(let i=0;i<cnt;i++) {
$$('.categories2 ').get(i).all(by.tagName('button')).get(1).click();
browser.driver.sleep(5000);
}
})
// if you use async/await
let cnt = await $$('.categories2 ').count();
for(let i=0;i<cnt;i++) {
await $$('.categories2 ').get(i).all(by.tagName('button')).get(1).click();
await browser.driver.sleep(5000);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.