当我点击inspect元素时,下面是我的代码:
<select _ngcontent-c2="" class="form-control ng-pristine ng-invalid ng-touched" id="type" name="Type" required="">
<option _ngcontent-c2="" disabled="" value="0: null">Type</option>
<!----><option _ngcontent-c2="" value="1: account">
account
</option><option _ngcontent-c2="" value="2: booking">
booking
</option>
</select>
我想点击选项“1”,即account
,下面是我尝试过的代码:
List <WebElement> Type= driver.findElements(By.id("type"));
Type.get(1).click();
但我的脚本没有点击我要点击的元素。有人可以帮助我吗?
答案 0 :(得分:1)
您可以使用下面给出的选择类。
Select sel = new Select(driver.findElements(By.id("type")));
sel.selectByVisibleText("account");
答案 1 :(得分:0)
试试这段代码:
List<WebElement> dropDown = driver.findElements(By.id("type"));
for(WebElement dd : dropDown ){
if(dd.getText().contains("account")){
dd.click();
}
}
我不知道为什么你没有尝试过在Selenium中出现的选择类。对于那样的事情:
Select select = new Select(driver.findElement(By.id("type")));
select.selectByVisibleText("account");
//OR
//select .selectByIndex(1);
//OR
//select .selectByValue("1");
答案 2 :(得分:0)
由于它是下拉列表,因此最好使用选择类
请尝试以下代码并导入正确的库。图书馆也在下面提到,
import org.openqa.selenium.support.ui.Select;
代码,
String value = "account";
Select select = new Select(driver.findElement(By.xpath("//*[@id='type']")));
select.selectByVisibleText(value);
答案 3 :(得分:0)
直接你可以把这个代码写到帐户
import org.openqa.selenium.Keys
driver.findElement(By.id("type")).send_keys("account");