我在Java中使用Selenium编写了一个自动化测试。
如果我插入相关断点并在调试模式(IntelliJ)下运行测试,则测试正常。当我尝试运行测试时,它无法从下拉列表中找到所需元素。
代码段:
driver.waitForElementPresent(PageElement.byXpath(XPATH_TEMPLATE_TEAM_OPTION, XPATH_TEMPLATE_TEAM_DESCRIPTION, team));
driver.selectFromVisibleText(SELECT_TEAM, team);
N.B。类似的代码正在我的项目的其他地方使用,并且工作正常。
我收到错误:
org.openqa.selenium.NoSuchElementException
答案 0 :(得分:0)
使用expicity wait而不是waitForElementPresent:以下代码等待PageElement 10秒钟,但您可以根据页面加载时间增加或减少。
(new WebDriverWait(driver, 10))
.until(ExpectedConditions.presenceOfElementLocated(PageElement.byXpath(XPATH_TEMPLATE_TEAM_OPTION, XPATH_TEMPLATE_TEAM_DESCRIPTION, team)));
driver.selectFromVisibleText(SELECT_TEAM, team);