0

テストしようとしているウェブサイトがあり、いくつかのドロップダウンがあります。1 つの select 要素を以下に示します。

<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、腸溶カプセル

ドロップダウンの現在の値だけを取得して、変更後に現在の値と比較するにはどうすればよいですか?

4

1 に答える 1

1

使用してみてください:

Select select = new Select(driver.findElement(By.id("dosage")));
String selectedText = select.getFirstSelectedOption().getText();
于 2012-12-17T23:41:36.047 に答える