我正在尝试使用Select找到Dropdown,但它给了我错误:
线程中的异常" main" org.openqa.selenium.support.ui.UnexpectedTagNameException:元素应该是" select"但是"输入"
尝试使用ByIndex,ByValue但不能正常工作
代码
Select dropdown = new
Select(driver.findElement(By.id("ctl00_MainContent_ddlLocale_Input")));
//dropdown.selectByIndex(2);
dropdown.selectByValue("Austria: Vienna");
HTML
td class="rcbInputCell rcbInputCellLeft" style="width:100%;">
<input id="ctl00_MainContent_ddlLocale_Input" class="rcbInput ui-widget- content" type="text" value="Austria: Vienna" name="ctl00$MainContent$ddlLocale" autocomplete="off"/>
答案 0 :(得分:1)
作为例外明确说明您正在查找input
元素,但尝试使用select
元素。
new Select()
元素作为输入时, select
期望input
元素作为输入。
您需要验证提供的ID ctl00_MainContent_ddlLocale_Input
是input
元素或select
元素的ID。
如果您的ctl00_MainContent_ddlLocale_Input
和input
元素的select
相同,那么您需要尝试usimg cssSelector
来指定select
元素,如下所示: -
Select dropdown = new Select(driver.findElement(By.cssSelector("select#ctl00_MainContent_ddlLocale_Input")));
//dropdown.selectByIndex(2);
dropdown.selectByValue("Austria: Vienna");
希望它有所帮助.. :)