使用Selenium WebDriver选中和取消选中复选框
使用Selenium WebDriver选中和取消选中复选框 我使用的是,所以我的代码是这样显示的使用Selenium WebDriver选中和取消选中复选框,selenium,selenium-webdriver,pageobjects,Selenium,Selenium Webdriver,Pageobjects,使用Selenium WebDriver选中和取消选中复选框 我使用的是,所以我的代码是这样显示的 SelectCheckBox("Check"); OR SelectCheckBox("Uncheck"); [FindsBy(How = How.Id, Using = "payment_sameasdeliveryaddress")] public IWebElement checkbox_Address = null; pu
SelectCheckBox("Check"); OR SelectCheckBox("Uncheck");
[FindsBy(How = How.Id, Using = "payment_sameasdeliveryaddress")]
public IWebElement checkbox_Address = null;
public void SetCheckBox(string value)
{
//Console.Write("checkbox state: " + checkbox_Address.Selected);
if (value.ToLower().Equals("uncheck") && checkbox_Address.Selected)
{
checkbox_Address.Click();
}
else if (value.ToLower().Equals("check") && !checkbox_Address.Selected)
{
checkbox_Address.Click();
}
我已经好几年没有写过任何.NET了,所以下面的内容甚至可能无法编译!但希望你能明白
// The individual elements should be declared private
private IWebElement payment_sameasdeliveryaddress;
// If you name it same as the source element
// ID, PageFactory will find it for you
// flag = true, means you want it checked
public void SelectCheckBox(Boolean check)
{
if (!check && payment_sameasdeliveryaddress.Selected) {
payment_sameasdeliveryaddress.Click();
}
else if (check && !payment_sameasdeliveryaddress.Selected) {
payment_sameasdeliveryaddress.Click();
}
这也将有助于:
// flag = true, means you want it checked
public void SelectCheckBox(Boolean check)
{
if (check ^ payment_sameasdeliveryaddress.Selected) {
payment_sameasdeliveryaddress.Click();
}
}
使用SeleniumWebDriver 3.9.1和6.14共享当前项目中刚刚实现的代码段 案例1:选中复选框
if(dataValofChkBx != null && dataValofChkBx.equalsIgnoreCase("Y"))
{
if(chkBx1Sel.toString() == "false") //i.e., checkbox is not already checked
{
driver.findElement(By.xpath(POP2GUIConstants.ggsnFwlfUpdChkBx)).click();
}
}
if(dataValofChkBx != null && dataValofChkBx.equalsIgnoreCase("N"))
{
if(chkBx1Sel.toString() == "true") // I.e., checkbox is already checked
{
driver.findElement(By.xpath(POP2GUIConstants.ggsnFwlfUpdChkBx)).click();
}
}
案例2:取消选中复选框
if(dataValofChkBx != null && dataValofChkBx.equalsIgnoreCase("Y"))
{
if(chkBx1Sel.toString() == "false") //i.e., checkbox is not already checked
{
driver.findElement(By.xpath(POP2GUIConstants.ggsnFwlfUpdChkBx)).click();
}
}
if(dataValofChkBx != null && dataValofChkBx.equalsIgnoreCase("N"))
{
if(chkBx1Sel.toString() == "true") // I.e., checkbox is already checked
{
driver.findElement(By.xpath(POP2GUIConstants.ggsnFwlfUpdChkBx)).click();
}
}
选中复选框的最简单方法是通过对元素使用isSelected()方法来选中或不选中复选框。例如:
if(getCheckBox().isSelected()){
getCheckBox.click();
}
public WebElement getCheckBox(){
return driver.findElement(termsCheck);
}
这是一个可怕的函数!如果将其称为
SelectCheckBox(“uncheck”)
,小写为u,会发生什么?将值设置为布尔值如何?