如何为这些写一个广义的?我的意思是函数应该接受参数并返回所需的字符串。
String fullName = driver.findElement(By.className("full-name")).getText();
String title = driver.findElement(By.className("title")).getText();
String locality = driver.findElement(By.className("locality")).getText();
String industry = driver.findElement(By.className("industry")).getText();
String connections = driver.findElement(By.xpath("//div[@class='member-connections']/strong")).getText();
String profileLink = driver.findElement(By.className("view-public-profile")).getText();
该功能应该是这样的:
String getInfo(String className, String byType) {
return driver.findElement(By.byType(className)).getText();
}
编辑:
我已编写此函数,但我不知道如何使用By附加byType。
static String getInfo(WebDriver driver, String byType, String byParam) {
return driver.findElement(By. + byType + (byParam)).getText();
}
谢谢!
答案 0 :(得分:1)
你可以试试这个:
public String byXpath(String xpath) {
return driver.findElement(By.xpath(xpath)).getText();
}
public String byClass(String $class) {
return driver.findElement(By.className($class)).getText();
}
<强>编辑:强>
public String by(By by) {
return driver.findElement(by).getText();
}
String x = by(By.className(name));
String y = by(By.xpath(path));
答案 1 :(得分:1)
这似乎比其他人更容易回答,所以我要把我的脖子放在线上。并说,这有什么不对......
public String get(WebDriver driver, By by) {
return driver.findElement(by).getText();
}
..并使用它... ...
String a = get(urDriver, By.className(someName));
String b = get(urDriver, By.xpath(somePath));