powermock相关内容

Kotlin 中的模拟扩展功能

如何在测试中使用 Mockito 或 PowerMock 模拟 Kotlin 扩展功能?由于它们是静态解析的,应该将它们作为静态方法调用还是非静态进行测试? 解决方案 我觉得MockK可以帮到你. 它也支持模拟扩展功能. 您可以使用它来模拟对象范围的扩展: 数据类 Obj(val value: Int)类分机{有趣的 Obj.extensionFunc() = 值 + 5}w ..
发布时间:2022-01-14 13:19:11 其他开发

使用 Mockito 模拟 Joda DateTime 方法

我希望 millis 返回指定的值. public long myMethod(){DateTime nowDateTime = new DateTime(DateTimeZone.UTC);长毫秒 = nowDateTime.getMillis();System.out.println(毫秒);} 我试过了,但没有运气. @RunWith(PowerMockRunner.class)@Pr ..
发布时间:2022-01-14 13:17:47 Java开发

即使在添加 @PrepareForTest 之后,Mockito 也会要求为该类添加 @PrepareForTest

我有以下简单的代码.我有一个类(TestClass),我想测试“someMethod".我的“someMethod"调用了一个外部静态方法.我想对该静态方法进行 Powermock 以返回一些虚拟对象.我一开始就有@PrepareForTest(ExternalClass.class),但是当我执行它时会出现错误: ExternalClass 类没有准备好进行测试.要准备此类,请将类添加到 ..
发布时间:2022-01-14 13:16:36 Java开发

当父级在不同的包中时模拟受保护的父级方法

我需要在我的测试类的父类中模拟一个受保护的方法,但父类位于不同的包中,因此我的测试类无法访问该方法,因此我无法模拟它.这个问题必须有一个无需重构的解决方案 我需要使用 Powermock 和 Mockito.这是 JAR mockito-all 1.10.8 powermock-core 1.6.1 powermock-module-junit4 1.6.1 powermock- ..
发布时间:2022-01-14 13:07:28 Java开发

使用 PowerMockito 模拟 getClass 方法

我想避免模拟类的 getClass() 方法,但似乎找不到任何解决方法.我正在尝试测试一个将 HashMap 中的对象类类型存储到稍后使用的特定方法的类.一个简单的例子是: 公共类 ClassToTest {/** 在构造函数期间将用对象填充的映射 */私有映射,方法>map = new HashMap, Method>();类测试(){/* 遍历 ClassToTe ..
发布时间:2022-01-14 13:05:21 Java开发

java.lang.LinkageError: ClassCastException

我确实遇到了一个非常烦人的 TestNG 和 RESTeasy 问题. 我确实有一个类针对使用 RESTeasy 框架公开自身的 API 类运行多个测试. 但是,如果我让测试使用 maven (mvn test) 运行,则会出现以下异常: java.lang.LinkageError: ClassCastException: 试图 castjar:file:/C:/Users/rit ..
发布时间:2022-01-14 13:05:03 Java开发

如何模拟 void 静态方法以使用 Powermock 引发异常?

我正在尝试使用 Powermock 和 Mockito 来模拟 void 静态方法来抛出异常,如下所示.但是我遇到了一个问题.除非我使用相同的参数对 Adder.add() 进行两次调用,否则不会抛出模拟的 IOException. 顺便说一句,我已将 @RunWith(PowerMockRunner.class) 和 @PrepareForTest(Adder.class) 添加到单元测试 ..
发布时间:2022-01-14 13:00:42 Java开发

使用 PowerMock 模拟私有方法,但仍会调用底层方法

我正在尝试模拟一个进行 JNDI 调用的私有方法.当从单元测试中调用该方法时,它会引发异常^.我想模拟该方法以进行测试.我使用了 来自另一个问题的示例代码回答,当测试通过时,似乎仍然调用了底层方法.我在 doTheGamble() 方法中插入了一个 System.err.println(),它被打印到我的控制台. 很有趣,如果我注释掉第一个 assertThat,测试就通过了.?:( ..
发布时间:2022-01-14 13:00:00 Java开发

模拟 java.time.format.DateTimeFormatter 类

我正在尝试模拟 DateTimeFormatter 类.我做了以下事情: @RunWith(PowerMockRunner.class)@PrepareForTest({DateTimeFormatter.class})公共类 UnitTest {私有 DateTimeFormatter mockDateFormatter;私人 AwesomeClass AwesomeClass;@前公共无效设 ..
发布时间:2022-01-14 12:58:17 Java开发

使用 PowerMockito 1.6 验证静态方法调用

我正在为类似于下面给出的示例的方法编写 JUnit 测试用例: 类 SampleA{公共静态无效方法A(){boolean isSuccessful = methodB();如果(成功){SampleB.methodC();}}公共静态布尔方法B(){//一些逻辑返回真;}}类样本B{公共静态无效方法C(){返回;}} 我在我的测试类中编写了以下测试用例: @Test公共无效测试方法A_1( ..
发布时间:2022-01-14 12:54:43 Java开发

PowerMockito 似乎无法匹配和重载方法

我似乎无法克服这个问题.我正在尝试模拟一个需要 1 个参数的重载方法 类 ClassWithOverloadedMethod {私有布尔isValid(ClassA a){返回真;}私有布尔isValid(ClassB B){返回假;}} 模拟设置 ClassWithOverloadedMethod uut = PowerMockito.spy(new ClassWithOverloaded ..
发布时间:2022-01-14 12:52:40 其他开发

TestNG + Mockito + PowerMock - verifyStatic() 不起作用

我是新的 TestNG 和一般的单元测试.我将 TestNG 6.9.6 与 Mockito 1.10.19 和 PowerMock 1.6.4 一起使用.我想验证 MyService 类中的 myMethod() 方法是否在内部使用正确的参数调用静态方法 Util.myStaticMethod.由于 Mockito 本身不支持对静态方法的验证,因此我将 PowerMock 与它一起使用.我的测试 ..
发布时间:2022-01-14 12:52:30 Java开发

如何在没有 powermock 的情况下模拟静态方法

在 JUnit 中进行测试时,有什么方法可以模拟静态 util 方法吗? 我知道 Powermock 可以模拟静态调用,但我不想使用 Powermock. 还有其他选择吗? 解决方案 (不过我假设你可以使用 Mockito)我没有想到任何专门的东西,但是当涉及到这样的情况时,我倾向于使用以下策略: 1) 在被测类中,将静态直接调用替换为对封装静态调用本身的包级方法的调用: ..
发布时间:2022-01-14 12:50:23 Java开发