Java 使用泛型参数模拟静态方法
我试图用符号模拟静态方法Java 使用泛型参数模拟静态方法,java,junit,powermock,Java,Junit,Powermock,我试图用符号模拟静态方法 public static <T extends Object> T get( String name, Class<T> i ) { return null } 但是它的投掷 org.powermock.reflect.exceptions.MethodNotFoundException: No method found with name 'get' with parameter types: [ java.lang.St
public static <T extends Object> T get( String name, Class<T> i )
{
return null
}
但是它的投掷
org.powermock.reflect.exceptions.MethodNotFoundException: No method found with name 'get' with parameter types: [ java.lang.String, java.lang.Class ]
有人能告诉我们如何使用powermockito来模拟这个吗
PowerMockito.mockStatic(Classname.class);
PowerMockito.when(Classname.get("name", Clas.class)).thenReturn("Hi");
这适用于静态方法,但不适用于泛型方法吗?@ginz这应该没有什么区别,因为类型擦除,被测试的方法在编译时将具有签名
public static Object get(String name,Class i)
。是的,仅使用字符串参数进行测试。第二部分不应该仍然是PowerMockito。当(ClassName.Class,“get”、“name”、Class.Class),然后返回(“Hi”);
?
PowerMockito.when(Classname.get("name", Clas.class)).thenReturn("Hi");