如何在Selenium Java代码中使用By.parameter?

时间:2018-08-08 11:28:45

标签: java selenium selenium-webdriver

我是硒的新手,我被困在特定的情况代码中。我正在尝试为复选框编写通用代码,如下所示。

public void CheckBox(By by, String element)
{
    driver.findElement(By.by(""));
}

上面的通用代码,以后可以在测试中使用。用户将在何处使用此功能将通过元素以及他需要搜索的内容。 (通过Xpath,ID或名称等)

我可以编写if_else或Switch,但是,这将占用太多代码,是否有任何方法可以将直接参数与通过对象一起使用,或者是否有其他方法可以做到这一点。感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

findElement收到By作为参数

public void CheckBox(By by)
{
    driver.findElement(by);
}

并这样称呼

CheckBox(By.id("id")); // or any other locator 

答案 1 :(得分:0)

public void CheckBox(By by, String element) {
            driver.findElement(by).sendKeys(element);
}

现在您可以将此CheckBox方法调用到@Test代码中

  @Test
  public void fillLoginDetails() {
        CheckBox(By.id("ap_customer_name"),"bonn");
        CheckBox(By.id("ap_email"),"absvdgdhdh@gmail.com");
        CheckBox(By.name("password"),"bo123456");
        CheckBox(By.id("ap_password_check"),"bon123456");
  }