我是一个新蜜蜂,输入用户名/密码后,我可以选择一个‘测试’选项。第一个选项显示在屏幕上,旁边是下拉箭头。点击箭头或框。打开一个新框,其中包含要选择的选项(测试1(默认)、测试2、测试3和test4)。我需要根据变量中的参数集进行选择。我能够通过xpath设置选择确切的选项,但在使用变量进行选择方面没有成功。
下拉菜单是自定义框-当鼠标悬停时,突出显示所选内容。
提前感谢
下面是代码.
<div id="loginForm:selectProject_panel" class="ui-selectonemenu-panel ui-widget-content ui-corner-all ui-helper-hidden ui-shadow" style="width: 208px; display: none; top: 58px; left: 617.5px;">
<div class="ui-selectonemenu-items-wrapper" style="height:auto">
<ul class="ui-selectonemenu-items ui-selectonemenu-list ui-widget-content ui-widget ui-corner-all ui-helper-reset">
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all" data-label="Test 1 ">Test 1</li>
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all" data-label="Test 2 ">Test 2 </li>
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all ui-state-highlight" data-label="Test 3">Test 3</li>
<li class="ui-selectonemenu-item ui-selectonemenu-list-item ui-corner-all" data-label="Test 4">Test 4</li>
</ul>
</div>
</div>WebDriver代码
WebElement username = driver.findElement(By.id("loginForm:userLoginId"));
username.sendKeys("username");
WebElement endKeys("Password1!");
WebElement dropdown = driver.findElement(By.xpath(".//*@id='loginForm:selectProject_label']"));
dropdown.click();
// System.out.println();
driver.manage().timeouts().implicitlyWait(15,TimeUnit.SECONDS);
WebDriverWait waitForOptions = new WebDriverWait(driver,3);
waitForOptions.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(".//*[@id='loginForm:selectProject']/div[3]")));
driver.manage().timeouts().implicitlyWait(15,TimeUnit.SECONDS);
WebElement option = driver.findElement(By.xpath(".//*[@id='loginForm:selectProject_panel']/div/ul/li[3]"));
option.click();
System.out.println("Selecting Test 3");
WebElement button = driver.findElement(By.id("loginForm:loginButton"));
button.click();
System.out.println(driver.getTitle());发布于 2013-12-13 06:35:30
String optionToSelect = "Test2"
driver.findElement(By.xpath("//*[contains(@class,'ui-selectonemenu-items ui-selectonemenu') and text()='" + optionToSelect + "') ]";https://stackoverflow.com/questions/20550422
复制相似问题