【发布时间】:2017-02-07 20:45:58
【问题描述】:
我正在尝试创建一个方法,该方法采用两个字符串参数并调用对象的方法调用。这两个参数将提供类名和方法名。理想情况下,我想使用反射来查找对象和方法,然后调用该方法。这是针对我管理的自动化套件。
public void executeMethod(String className, String methodName){
Class object = className.getClass();
Method objMethod = object.getMethod(methodName);
objMethod.invoke(pageObject);
}
当我运行它时,我收到一个错误 NoSuchMethodException: java.lang.String.isPageDisplayed() 。
我相信我的问题存在于寻找对象或与对象有关的事情上。
如果我执行上面相同的方法,如下所示,它可以工作:
public void executeMethod(String className, String methodName){
Method objMethod = knownObject.class.getMethod(methodName);
m1.invoke(pageObject);
}
谁能帮我弄清楚我做错了什么?在这种情况下,我尝试调用的方法是 public static void 方法。
【问题讨论】:
-
String 类没有 isPageDisplayed() 方法。你的方法调用正确吗?
标签: java reflection automation qa