我正在使用此网站 - https://www.blueshieldca.com/home - 并点击“查找提供商”。在Located Near
输入中我输入'los',我必须从建议的选项中选择第二个值。
任何人都可以告诉我如何为它编写xpath吗?
答案 0 :(得分:1)
使用此// li [@class =' ui-menu-item'] [@ role =' menuitem'] [2]
答案 1 :(得分:1)
一种简单的方法是明确等待。
new WebDriverWait(driver,30).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//li[@class='ui-menu-item'][2]"))).click();
答案 2 :(得分:0)
您的网站无法使用。请发布HTML并尝试使用:
//Select option last activity as Completed
WebElement select = driver.findElement(By.name("status"));
List<WebElement> options = select.findElements(By.tagName("option"));
for(WebElement option : options){
if(option.getText().equals("Confirmed")) {
option.click();
break;
}
}
答案 3 :(得分:0)
我的大部分都在工作。我在这里遇到的问题是它没有从下拉列表中选择第二个值。
IWebDriver driver = new FirefoxDriver();
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
driver.Navigate().GoToUrl("https://www.blueshieldca.com/home");
driver.Manage().Window.Maximize();
driver.FindElement(By.XPath("//div[contains(@class,'primary_navigation_area')]//li[4]//a[contains(@onclick,'dcsMultiTrack')]")).Click();
IWebElement entercity = driver.FindElement(By.Id("location"));
entercity.Click();
entercity.SendKeys("los");
wait.Until((d)=>driver.FindElement(By.XPath("//li[@class='ui-menu-item'][@role='menuitem'][2]")));
driver.FindElement(By.XPath("//li[@class='ui-menu-item'][@role='menuitem'][2]")).Click();
driver.FindElement(By.ClassName("findNow")).Click();