获取选择字段的当前值

时间:2012-12-17 23:21:44

标签: java testing testng selenium-webdriver

我有一个我试图测试的网站有几个下降。一个选择元素如下:

<select class="input-xxlarge" name="dosage">
  <option value="20 MG, Enteric Coated Capsule">20 MG, Enteric Coated Capsule</option>
  <option value="60 MG, Enteric Coated Capsule">60 MG, Enteric Coated Capsule</option>
  <option value="30 MG, Enteric Coated Capsule">30 MG, Enteric Coated Capsule</option>
</select>

在更改值后,我注意到的唯一更改是类名更改为:“input-xxlarge changedInput”。

我正在使用WebDriver运行测试,并希望得到当前值。我试图做以下事情:

    WebElement strengthForm = driver.findElement(By.xpath("/html/body/section/article[2]/div/table/tbody/tr["+rowNum2+"]/td/div/article/section/form/fieldset/label/select"));
    String strengthBeforeChoosing = strengthForm.getText().toString();
    System.out.println(strengthBeforeChoosing);

问题在于,不是抓住当前值,而是给了我所有选项。

20 MG,肠溶包衣胶囊 60 MG,肠溶包衣胶囊 30 MG,肠溶包衣胶囊

我如何才能获得下拉列表的当前值,以便在更改后将其与当前值进行比较?

1 个答案:

答案 0 :(得分:1)

尝试使用:

Select select = new Select(driver.findElement(By.id("dosage")));
String selectedText = select.getFirstSelectedOption().getText();