问题标签 [powermockito]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
647 浏览

java - Powermockito 如何调用 ProcessBuilder redirectError(File file)

我有一个类调用 ProcessBuilder redirectError(File file)

我想做这个的powermockito,但我总是得到空指针异常。

我在课堂上的方法是

0 投票
2 回答
13921 浏览

java - 如何使用 PowerMockito 模拟私有静态方法?

这与此处发现的问题相同。不幸的是,接受的答案对我不起作用。我有一个静态实用程序类,其中包含我需要测试的私有方法。我发现当我模拟这样的方法时:

我得到一个空指针异常,因为getSomethingMethod()实际上正在调用。当我调试时,我发现当我运行我试图测试的方法时它没有被调用,但是当我设置模拟时它正在运行。 基于此站点,当您以这种格式创建模拟时,看起来应该会发生这种情况。

所以然后我尝试以这种方式设置模拟:

但是,我从 Eclipse 收到一条错误消息,提示我需要将其可见性更改getSomethingMethod()为公开。使用 PowerMockito 的一大好处不是可以模拟私有方法吗?我需要模拟这个private static方法(在设置过程中没有实际调用该方法)。

0 投票
1 回答
3678 浏览

java - 为什么 Whitebox 无法识别我的私有方法?

我有一个方法,我试图在一个名为 MyUtil 的公共最终类中进行测试:

我有两个测试方法,我使用 Whitebox 设置来调用这个私有方法:

当我运行这些测试时,我收到一条错误消息,上面写着:

“org.powermock.reflect.exceptions.MethodNotFoundException:找不到名称为'getStringFromArray'的方法,参数类型:[java.lang.String,java.lang.String,java.lang.String]”

为什么 Whitebox 在第一个测试中识别该方法(以 null 作为数组)但在第二个测试中没有识别(我有一个实际数组)?我应该提到我包含了我为这个测试类制作的@Before spy(我在其他测试中需要它),以防万一影响问题。

0 投票
2 回答
81 浏览

java - 如何模拟从另一个方法调用的方法

我所处的场景

我想掌握进入 foo 的字符串参数 a 和 b。测试类如下所示

最后的 sysout 打印 null<>null。为什么 texts 数组没有更新?

0 投票
1 回答
2083 浏览

java - Mockito - PowerMock。模拟方法调用

我想为下面的方法编写一个测试,在这个方法中,我要模拟的另外两个方法调用是 getterToMock(),第二个是static方法调用,因为static使用 Mockito 模拟方法是不可能的我使用 PowerMock 但我我仍然得到NullPointerException

我的测试如下

我认为问题在于我没有正确模拟 @Resource 注释属性

编辑添加实际代码

Utils 类中的 getUsername

测试

异常堆栈跟踪

0 投票
1 回答
128 浏览

java - 使用 Powermockito 断言静态方法的参数值

我的简化类文件如下所示:

我正在编写一个 junit 测试类来测试该方法sendNotification,同时模拟 notify 方法。目标是断言传递给notify方法的 id 和消息变量的值。

0 投票
1 回答
46 浏览

powermock - 使用 powerMock 对构造函数中的 void 方法进行验证

我需要为以下类的构造函数编写一个测试用例,其中有一个我需要模拟和验证的 void 方法。如何验证 createToken 是使用 powermockito 调用的?

测试班

0 投票
2 回答
7419 浏览

java - PowerMockito如何在构造函数调用时抛出异常

我正在使用反射测试以下私有方法(getPrintWriter):

我想模拟 PrintWriter 的构造函数抛出 FileNotFoundException。

我想模拟 PrintWriter 构造函数被抛出 FileNotFoundException 然后我想断言,返回 null。我用注释行标记了抛出以下异常,我不知道如何正确模拟它。

0 投票
1 回答
1351 浏览

junit - PowerMockito 和 Mockito 冲突

我需要为遗留系统构建单元测试(使用 junit)。我需要测试的方法使用静态方法,我需要检查它是否被调用。所以,我需要使用 PowerMockito(对于“常规”模拟,我们使用 mockito)。

但是,当我在测试中包含 PowerMockito 语句时,Mockito 失败并显示org.mockito.exceptions.misusing.UnfinishedStubbingException. 如果我评论这些行PowerMockito.mockStatic(Application.class), PowerMockito.doNothing().when(Application.class) and PowerMockito.verifyStatic(),UnfinishedStubbingException 不会发生,但是这样,我无法检查我的 IllegalArgumentException 是否发生。

被测方法如下所示:

测试看起来像:

我使用最新版本导入了 PowerMokito。

我做错了什么?欢迎任何建议。

0 投票
2 回答
5576 浏览

java - 使用 Mockito 和 PowerMockito 进行 DAO 测试

我想使用 Mockito(如果需要,还可以使用 PowerMockito)测试我的 DAO 方法,但我不知道该怎么做。调用静态方法的最大问题(MySQLStationDAO 中的 MySQLDAOFactory.getConnection())。你能帮助我吗?

我通过这种方式获得连接:

这是一个DAO方法: