如何在java中使用selenium选择下拉选项,其中跨栏为html

时间:2018-04-04 21:28:50

标签: java selenium

以下是span中3个选项的HTML。如何编写以选择其中一个选项。

<span class="select2-selection__rendered" id="select2-selBrand-container" title="Select a option" style="">Select a brand</span>

<span class="select2-selection__rendered" id="select2-selBrand-container" title="Option 1" style="">Option 1</span>

<span class="select2-selection__rendered" id="select2-selBrand-container" title="Option 2" style="">Option 2</span>

3 个答案:

答案 0 :(得分:0)

我在某个时候遇到了这个问题而且遇到了这个问题。不确定它是否是最优雅的方式,如果它也适用于你的情况(对我来说,我总是需要在下拉列表中选择第二个值)。

iWebDriver.findElement(By.id(<dropdown_id>)).click();
        for (int i = 0; i <= 2; i++) {
            Actions actions = new Actions(iWebDriver);
            actions.sendKeys(Keys.DOWN).build().perform();//press down arrow key
            actions.sendKeys(Keys.ENTER).build().perform();//press enter
        }

iWebDriver是WebDriver实例

答案 1 :(得分:0)

看起来他们都有不同的头衔。您可以使用它们来选择要单击的内容。

driver.findElement(By.xpath('//*[@title="Option 1"]')).click();

答案 2 :(得分:0)

您可以尝试以下任何一项:

List<WebElement> options=driver.findElements(By.xpath("//span[@class='select2-selection__rendered']"));

options.get(index).click();
driver.findElement(By.xpath("//span[text()='Option 1']")).click();