Я пытаюсь создать метод, который принимает два строковых параметра и вызывает вызов метода для объекта. Эти два параметра будут снабжать className и methodName. В идеале я хотел использовать отражение, чтобы найти объект и метод, чтобы затем вызвать метод. Это для набора автоматизации, которым я управляю.Java Reflection - NoSuchMethodException Thrown, когда существует метод
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 public void method.
класса Строки не имеет метода isPageDisplayed(). Правильно ли вы называете свой метод? – renanlf