If you just want to call another static method on the class, then you can use the approach already identified by others:
Method method = Dialogs.getMethod(s, Integer.class);
method.invoke(null, i);
But if you want to be able to use a static method to call an non-static method, then you will need to pass in the object that you want to reference or make chooseDialog non-static.
function chooseDialog(Object o, String s, Integer i) {
Method method = Dialogs.getMethod(o, Integer.class);
method.invoke(o, i);
}
But I don't think that this is the correct OOP way to handle the problem. And based on your comments, reflection isn't absolutely necessary, and have chooseDialog analyze the string and pass that to the appropriate method is a much more typesafe approach. In either approach, your unit tests should look the same.
if (s.equals("dialog1")) {
dialog1(i);
}