java - Selenium 找不到项目列表输入

标签 java selenium selenium-webdriver

你好,我正在学习 Selenium ,我遇到了第一个问题。我搜索了很长时间并测试了很多解决方案,但没有一个适合我。

这就是我想要单击的按钮的外观(我想单击导航栏中的“事件”按钮)

<div id="navbar-items" class="collapse navbar-collapse">
                <ul class="nav navbar-nav">
                    <li><a href="#about">About</a></li>
                    <li><a href="#events">Events</a></li>
                    <li><a href="#venues">Venues</a></li>
                    <li><a href="#bookings">Bookings</a></li>
                    <li><a href="#monitor">Monitor</a></li>
                    <li><a href="admin">Administration</a></li>
                </ul>
            </div>

这是我的java代码:

public class SeleniumTest {

@Test
public void startWebDriver() throws InterruptedException{

    WebDriver driver = new FirefoxDriver();
    driver.navigate().to("http://localhost:8080/ticket-monster/");

    Assert.assertTrue("title should start differently",              
            driver.getTitle().startsWith("Ticket Monster"));

    Thread.sleep(7000);

    driver.findElement(By.xpath("//div[@id='navbar-items'][2]")).click();

    //*[@id="navbar-items"]/ul/li[2]/a

// I also was trying this and nothing clicked events button
//driver.findElement(By.xpath("(//span[@class='nav navbar-nav'])2]")).click();
//driver.findElement(By.cssSelector("ul > li:nth-child(2)")).click();
}
}

这是我正在练习的网站,可能会有所帮助。 http://ticketmonster-jdf.rhcloud.com/

我将非常感谢每一个帮助。

最佳答案

尝试下面的代码并告诉我。

WebDriver driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get("example.com");
WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(".//*[@id='navbar-items']/ul/li[2]/a")));
driver.findElement(By.xpath(".//*[@id='navbar-items']/ul/li[2]/a")).click();

而Xpath是最慢的,所以当我们没有任何选择的时候就使用xpath。幸运的是,xpath 正在获取 id,所以这里一切都很好。

关于java - Selenium 找不到项目列表输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37693073/

相关文章:

python - Selenium Python Firefox webdriver : can't modify profile

java - Java 独立项目 VSCode 中显示无法识别的选项 : -ea, --enable-preview 错误

java - 如何使用一把 key 加密多个密码?

java - 如何将项目 Y 添加到项目 X 并将项目 X 添加到项目 Z 并修复问题构建路径

extjs - 如何在Selenium中使用EXTJS生成的ext-gen ID?

python - Nosetests-script.py 错误 - 从 Needle 运行测试

javascript - 在 PhantomJS 和 Python 中伪造 Flash 插件信息

java - 带有 webdriver 和 testNG 的 Selenium 网格

java - 如何用hibernate将汉字写入MySQL?

java - selenium webdriver 如何获取在 iframe 所见即所得文本区域中输入的文本