我目前正在编写与 GET 请求相关的单元测试,下面是一个采用通用类型 E 的参数化测试。
abstract class AbstractEntityTest< E extends Entity > {
@ParameterizedTest( name = "[{index}]: {2}" )
@MethodSource( "RoleDataProvider#provideIntArgsToTest" )
void testIntRequestsThatReturnSingle( String fileName, Integer requestParam, String testName, int index )
// do something
}
}
我想要做的是在运行时根据 E 的实际类型动态更改方法源。
例子:
public class AnimalTest extends AbstractEntityTest< Animal > {
... }
这里 E 是 Animal 类型,所以我想将 @MethodSource 更改为
@MethodSource( "AnimalDataProvider#provideIntArgsToTest" )
有什么办法吗?我一直在寻找几个小时无济于事...