簡體   English   中英

量角器元素未附加到頁面文檔

[英]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.

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