powermock相关内容

模拟受保护的方法

我想模拟一个继承的受保护方法.我不能直接从java代码调用这个方法,因为它是从另一个包中的类继承的.我找不到在 when(...) 中指定此方法存根的方法 包一个;公共类 A() {受保护的 int m() {}}b包;公共类 B 扩展 a.A {//这个类目前没有覆盖 a.A 中的 m 方法公共 asd() {}}//测试b包;类 BTest {@测试公共无效测试类(){B 实例 = Pow ..
发布时间:2022-01-14 12:48:50 Java开发

PowerMock,模拟一个静态方法,然后在所有其他静态上调用真实方法

我正在设置模拟类的静态方法.我必须在 @Before 注释的 JUnit 设置方法中执行此操作. 我的目标是设置类来调用真正的方法,除了那些我明确模拟的方法. 基本上: @Before公共无效 setupStaticUtil() {PowerMockito.mockStatic(StaticUtilClass.class);//模拟某些方法...when(StaticUtilClas ..
发布时间:2022-01-14 12:46:56 Java开发

如何模拟超级参考(在超级类上)?

有时当我编写单元测试时,我应该模拟对超类的引用. 我读过这个问题:问题 此答案answer with DI 建议重构代码.但我做不到 如果超类方法足够大,则此答案另一个答案不适合.就我而言,我有非常大的代码.是的,我知道它违反了 SOLID OOD 原则,但我应该编写测试.我没有足够的时间进行重构. 该问题是 4 年前提出的! 目前 Mockito 或 Powermo ..
发布时间:2022-01-08 22:28:06 Java开发

如何在 Android 项目中使用 PowerMock?

我创建了一个新的 Android 测试项目.我从 https://code.google.com/p/下载了 powermock-mockito-junit-1-1.5.zippowermock/下载/列表.我将所有库添加到测试项目的 libs 文件夹中.测试类是一个非常简单的对象: 包com.test.test;导入 org.junit.runner.RunWith;导入 org.powerm ..
发布时间:2022-01-08 22:01:36 移动开发

如何验证没有抛出异常

在我使用 Mockito 的单元测试中,我想验证 NullPointerException 没有被抛出. public void testNPENotThrown{调用 call= Mock(Calling.class);testClass.setInner(调用);testClass.setThrow(true);testClass.testMethod();验证(调用,从不()).方法(); ..
发布时间:2022-01-08 22:01:07 Java开发

模拟系统类以获取系统属性

我通过 Eclipse 中的 JVM 参数在系统变量中设置了一个文件夹路径,我试图在我的类中访问它:System.getProperty("my_files_path"). 在为此类编写 junit 测试方法时,我尝试模拟此调用,因为测试类不考虑 JVM 参数.我使用 PowerMockito 模拟静态 System 类,并尝试在调用 System.getProperpty 时返回一些路径. ..
发布时间:2022-01-08 21:44:28 Java开发

每次使用 PowerMock 进行测试后,模拟行为都会重置

我正在使用 PowerMock 编写单元测试,模拟一些实用程序类的行为.为测试类定义一次行为(通过@BeforeClass 注解)原因: 第一次测试调用以返回模拟值 第二次测试调用返回真正的方法返回值 示例代码: import org.junit.Assert;导入 org.junit.BeforeClass;导入 org.junit.Test;导入 org.junit.runne ..
发布时间:2022-01-08 21:39:14 Java开发

如何使用 PowerMock 模拟返回 void 的静态方法?

我的项目中有一些静态 util 方法,其中一些只是传递或抛出异常.有很多关于如何模拟具有除 void 之外的返回类型的静态方法的示例.但是,我如何模拟一个将 void 返回到“doNothing()"的静态方法? 非空版本使用以下代码行: @PrepareForTest(StaticResource.class) ... PowerMockito.mockStatic(StaticRe ..
发布时间:2022-01-05 20:10:20 其他开发

如何使用 Mockito/Powermock 模拟枚举单例类?

我不确定如何模拟枚举单例类. 公共枚举 SingletonObject{实例;私有整数;受保护的 setNum(int num) {this.num = num;}公共 int getNum() {返回编号;} 我想在上面的例子中存根 getNum(),但我不知道如何模拟实际的 SingletonObject 类.我认为使用 Powermock 来准备测试会有所帮助,因为枚举本质上是最终的. ..
发布时间:2021-12-29 16:16:22 Java开发

PowerMock 中的@PrepareForTest 到底是什么意思?

PowerMockito 中的注释 @PrepareForTest 到底是什么意思? 除了具有静态方法的类之外,还应该放置什么? 解决方案 那个注解告诉 PowerMock(ito) 列出的类需要在字节码级别进行操作. 您需要“准备测试"所有这些类 X 模拟 static 方法(在 X 上)莉>控制对new() 用于另一个类 X 获得对私有方法的控制(您使用间谍和 P ..
发布时间:2021-12-24 22:58:12 Java开发

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

我试图模拟一个进行 JNDI 调用的私有方法.当从单元测试中调用该方法时,它会引发异常^.我想模拟该方法以进行测试.我使用了另一个问题答案中的示例代码,虽然测试通过,但似乎底层方法仍然被调用.我在 doTheGamble() 方法中插入了一个 System.err.println(),它被打印到我的控制台. 很有趣,如果我注释掉第一个 assertThat,测试就通过了.?:( 那么, ..
发布时间:2021-12-24 22:58:06 Java开发

如何模拟 URL 连接

嗨,我有一个方法可以将 URL 作为输入并确定它是否可访问.代码如下: public static boolean isUrlAccessible(final String urlToValidate) 抛出 WAGNetworkException {URL url = null;HttpURLConnection huc = null;int responseCode = -1;尝试 {url ..
发布时间:2021-12-24 22:49:09 Java开发

PowerMock 测试 - 设置类的静态字段

我很难找到设置类的静态字段的方法.基本上是这样的: 公共类Foo{//...私有静态 B b = 空;} 其中 B 是另一个类. 除了 setInternalStateFromContext() 之外,在 PowerMock 中还有什么方法可以做到这一点吗?使用上下文类方法设置一个字段似乎有点矫枉过正. 谢谢. 解决方案 Whitebox.setInternalState( ..
发布时间:2021-12-24 22:45:08 其他开发

PowerMock &爪哇 11

我们在一些历史项目中使用了 PowerMock.不幸的是,PowerMock 已经死了,并且与 Java 11 不兼容. 我们使用的是 mockStatic().是的,我们知道它被认为是有害的——它在遗留代码中,我们现在不想重写这些类...... 是否有任何选项可以调整 PowerMock 以支持 Java 11?或者是否可以用其他一些 Java 11 兼容框架轻松替换它?(Mocki ..
发布时间:2021-12-24 22:41:17 Java开发