试图 select 项目在硒下拉
Trying to select item in drop down in Selenium
我一直在尝试 select 来自此处网站的性取向:https://www.okcupid.com/ 但我似乎无法理解。我已经尝试了所有方法,从使用 .Click() 方法在下拉列表中单击我想要的元素,然后到为此提供的支持 class (SelectElement ) 像这样:
driver.Navigate().GoToUrl("https://www.okcupid.com/");
new SelectElement(driver.FindElementByCssSelector("#orientation_dropdownContainer")).SelectByValue("2");
我也试过 SelectbyText() ,我试过不同的元素(老实说,我认为所有这些)我可以考虑使用这个,但它仍然保持默认选项,任何想法伙计们?使用 Selenium - Firefox。
selector 对我来说似乎是错误的。为 select 元素使用 id orientation_dropdown
driver.Navigate().GoToUrl("https://www.okcupid.com/");
new SelectElement(_driver.FindElement(By.Id("orientation_dropdown"))).SelectByValue("2");
编辑
这是我见过的最奇怪的 select 列表之一。但是,上面的代码将不起作用,发现使用 Actions
class 可能很有用,它会起作用
string option = "Gay";
By xPath = By.XPath("//li[contains(text(),'"+option+"')]");
Actions actions = new Actions(_driver);
actions.MoveToElement(_driver.FindElement(By.Id("orientation_dropdown_chosen"))).Click().Build().Perform();
_driver.FindElement(xPath).Click();
首先 select 下拉,然后 select 按值或索引-
Select drpdown = new Select(driver.findElement(By.xpath("Locator of the dropdown"));
drpdown.SelectByValue("Value mentioned in the DOM");
如果"Earning Report"是一个可见的文本那么
drpdown.selectByVisibleText("visible text of the value");
我一直在尝试 select 来自此处网站的性取向:https://www.okcupid.com/ 但我似乎无法理解。我已经尝试了所有方法,从使用 .Click() 方法在下拉列表中单击我想要的元素,然后到为此提供的支持 class (SelectElement ) 像这样:
driver.Navigate().GoToUrl("https://www.okcupid.com/");
new SelectElement(driver.FindElementByCssSelector("#orientation_dropdownContainer")).SelectByValue("2");
我也试过 SelectbyText() ,我试过不同的元素(老实说,我认为所有这些)我可以考虑使用这个,但它仍然保持默认选项,任何想法伙计们?使用 Selenium - Firefox。
selector 对我来说似乎是错误的。为 select 元素使用 id orientation_dropdown
driver.Navigate().GoToUrl("https://www.okcupid.com/");
new SelectElement(_driver.FindElement(By.Id("orientation_dropdown"))).SelectByValue("2");
编辑
这是我见过的最奇怪的 select 列表之一。但是,上面的代码将不起作用,发现使用 Actions
class 可能很有用,它会起作用
string option = "Gay";
By xPath = By.XPath("//li[contains(text(),'"+option+"')]");
Actions actions = new Actions(_driver);
actions.MoveToElement(_driver.FindElement(By.Id("orientation_dropdown_chosen"))).Click().Build().Perform();
_driver.FindElement(xPath).Click();
首先 select 下拉,然后 select 按值或索引-
Select drpdown = new Select(driver.findElement(By.xpath("Locator of the dropdown")); drpdown.SelectByValue("Value mentioned in the DOM");
如果"Earning Report"是一个可见的文本那么
drpdown.selectByVisibleText("visible text of the value");