我正在为 selenium 开发一个关键字驱动的框架。我在一个单独的类中编写了我的方法。以下是包含打开主页、输入用户名和密码以及单击登录按钮的操作方法的类。
package actions;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
public class adminlogin {
WebDriver driver;
public adminlogin(WebDriver driver){
this.driver = driver;
}
public void adminopenhomepage() {
driver.get("http://localhost/carrental/admin/");
}
public void adminenterusername(WebElement username) {
username.sendKeys("admin");
}
public void adminenterpassword(WebElement password) {
password.sendKeys("Test@12345");
}
public void adminclickloginbutton(WebElement loginbutton) {
loginbutton.click();
}
public void adminclosebrowser() {
driver.close();
}
}
我在列表中有关键字,我遍历关键字并使用反射调用上述方法。我想要做的一种方法是在运行时获取参数类型和参数数量,以便我可以相应地传递参数。我正在尝试使用 getDeclaredMethod(keyword) 获取该方法,但这仅适用于那些没有像 adminopenhomepage() 这样的参数的方法,并且对所有其他方法都没有例外,因为它们接受参数。谁能告诉我如何解决这个问题?
for(String str : originalkeywords) {
String keyword = str;
String actioncl = keywordvsac.get(keyword);
String objectcl = keywordvsor.get(keyword);
Class<?> cls = Class.forName("actions."+actioncl);
Method methodcall = cls.getDeclaredMethod(keyword);
Parameter[] parameters = methodcall.getParameters();
System.out.println(Arrays.toString(parameters));
}
慕的地6264312
慕尼黑的夜晚无繁华
相关分类