首页 > 解决方案 > Selenium:unhandledPromiseRejectionWarning:NoSuchElementError:无法定位元素:.alert

问题描述

几天前我刚开始使用 Selenium,我很困惑为什么这不起作用。我在帖子底部发布了代码。(我正在使用 firefox 顺便说一句)下面代码的错误消息显示为“(节点:27024)UnhandledPromiseRejectionWarning:NoSuchElementError:无法定位元素:.alert”

但这是我想要的元素的正确 CSS 选择器,等待时间足够长,所以我不确定为什么它无法找到元素。当我使用驱动程序时,(".alert") CSS 选择器起作用了。 sleep() 在此代码中:

     driver.sleep(5000).then(function(){
         driver.findElement(By.css('.alert')).getText().then(function(txt){
             console.log("Alert text is: " + txt);
     });
});

我遇到问题的代码:

const webdriver = require ('Selenium-webdriver'),
    By = webdriver.By,
    until = webdriver.until;

    const driver = new webdriver.Builder().forBrowser('firefox').build();
    driver.get('https://library-app.firebaseapp.com/');

    driver.findElement(By.css('input')).sendKeys('user@email.com');
    driver.findElement(By.css('.btn')).click();
    driver.wait(until.elementLocated(By.css('.alert')), 10000);
    driver.findElement(By.css('.alert')).getText().then(function(txt){
        driver.findElement(By.css('.alert')).getText().then(function(txt){
            console.log("Alert text is: " + txt);
        })
    });

标签: javascriptnode.jsseleniumtesting

解决方案


推荐阅读