避免Selenium中出現「StaleElementReferenceException」錯誤的方法
P粉920835423
P粉920835423 2023-08-21 17:47:18
0
2
390
<p>我正在使用Java實現很多Selenium測試 - 有時候,我的測試由於<code>StaleElementReferenceException</code>而失敗。 </p> <p>你能提供一些讓測試更穩定的方法嗎? </p>
P粉920835423
P粉920835423

全部回覆(1)
P粉343141633

如果頁面上正在發生的DOM操作暫時導致元素無法訪問,就會發生這種情況。為了應對這些情況,您可以在循環中嘗試多次存取元素,直到最後拋出異常。

嘗試使用darrelgrainger.blogspot.com上的這個優秀解決方案:

public boolean retryingFindClick(By by) {
    boolean result = false;
    int attempts = 0;
    while(attempts < 2) {
        try {
            driver.findElement(by).click();
            result = true;
            break;
        } catch(StaleElementException e) {
        }
        attempts++;
    }
    return result;
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!