问题描述
我正在使用下面的无效代码。
它总是称为实际方法。
mockkStatic(Aes::class)
every { Aes.decrypt(PASSWORD,SECRET_KEY) } returns PASSWORD
public static String decrypt(String text,String secretKey) {}
解决方法
这样做的好策略是,如果没有其他方法(例如,静态方法属于第三方库),则在静态方法周围使用包装对象
class AESWrapper {
fun decrypt(String text,String secretKey) {
return Aes.decrypt(text,secretKey)
}
}
还有其他解决方案,例如PowerMock,但我记得您需要使用PowerMockRunner,这将来可能会限制您