gpt4 book ai didi

selenium - 如何通过 Java 中的 Selenium/Webdriver 单击复选框列表中的复选框?

转载 作者:行者123 更新时间:2023-12-01 17:00:05 29 4
gpt4 key购买 nike

我正在使用 Selenium 2 (Webdriver) 在网页上进行自动化测试。但是我想知道是否有办法使用 webdriver 框架从复选框列表中选中复选框?

我尝试了这段代码,但没有成功:

IWebElement box = ffDriver.FindElement(By.XPath("//*[@id='ctl00_ContentPlaceHolder1_Adde_div']"));
List<IWebElement> chkbox = box.FindElements(By.TagName("input"));
ffDriver.FindElement(By.Id("ctl00_ContentPlaceHolder1_Add_lstCategory_0"));
//chkbox.g(2).click();

最佳答案

如果您已经知道复选框的 id,则可以使用此方法来单击选择它:

string checkboxXPath = "//input[contains(@id, 'lstCategory_0')]"
IWebElement elementToClick = driver.FindElement(By.XPath(checkboxXPath));
elementToClick.Click();

假设页面上有多个具有相似 ID 的复选框,您可能需要将“lstCategory_0”更改为更具体的内容。

这是用C#编写的,但是适应其他语言应该不难。另外,如果您用更多信息编辑您的帖子,我可以更好地调整这个示例。

让我知道这是否有效!

<小时/>

我访问了该网站并使用以下代码成功与下拉小部件中的复选框进行了交互:

/** Set XPath Variables **/
string dropdownWidgetXPath = "//span[contains(@id, 'selInd')]";
string checkboxXPath = "//input[contains(@id, 'selInd')]";

/** Navigate to the page **/
driver.Navigate().GoToUrl("http://www.jobserve.com/us/en/Job-Search/");

/** Click the dropdown widget **/
IWebElement dropdownWidgetElement = driver.FindElement(By.XPath(dropdownWidgetXPath));
dropdownWidgetElement.Click();

/** Identify all checkboxes present **/
var allCheckboxes = driver.FindElements(By.XPath(checkboxXPath));

/** Click each checkbox and wait so that results are visible **/
foreach(IWebElement checkbox in allCheckboxes)
{
checkbox.Click();
System.Threading.Thread.Sleep(500);
}

关于selenium - 如何通过 Java 中的 Selenium/Webdriver 单击复选框列表中的复选框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11888786/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com