我编写的代码使用查找元素方法超过32次: 我想为find Element
创建一个通用的方法我应该声明任何通用方法吗?
答案 0 :(得分:1)
您的代码的更多信息将有助于解决此问题。如果您尝试访问页面上的不同元素,那么您将直接或间接地结束这32次调用。
首先检查您是否需要32种不同的元素。如果没有,请考虑将结果存储在变量中并重用它们(再次取决于您的代码/流程)。
答案 1 :(得分:0)
虽然这样做没有任何区别,但是如果你仍然想要你可以做一个像这样的方法:
public WebElement find(String type,String locator){
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
WebElement we;
if(type.equalsIgnoreCase("xpath")){
we = driver.findElement(By.xpath(locator));
}
if(type.equalsIgnoreCase("id")){
we = driver.findElement(By.id(locator));
}
// and so on...
}
你可以像这样使用它:
WebElement newButton1 = find("id","button1");
WebElement newLink1 = find("xpath","//a[text()='xyz']");