问题标签 [powermock]

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 回答
1425 浏览

unit-testing - Powermock - 如何模拟特定方法并使对象的其余部分保持原样

我有一个 Person 类,设置为 FirstName,LastName

执行 TestCase1 的 TestClass

我们可以只模拟一个特定的方法(getLastName)并保留其他所有内容(其他内部字段、函数......原样)吗?

0 投票
1 回答
1159 浏览

java - 在 NPE 测试结果中使用 PowerMock 获取 ATG Nucleus

我正在尝试测试以下代码:

显然 Nucleus.getGlobalNucleus() 是静态的。

根据文档,我应该能够使用:

不管怎样,当我调用时,我仍然得到一个空指针:

0 投票
1 回答
1749 浏览

spring - "Unable to locate Spring NamespaceHandler" when using PowerMock

EDIT: When trying to create a minimal project that reproduces this issue to send in to the PowerMock folks, I was unable to reproduce the issue, so I'm not sure yet what other variable is causing the issue below.

I'm trying to write a unit/integration test specifically to ensure our Spring bean configuration is written correctly. Looks something like this:

and that passes. However, a need has arisen to use PowerMock for a similar test. When I modify the passing test above by introducing PowerMock like this:

the test passes in Eclipse, but fails when run via Maven with the following error:

I did not make any changes to dependencies in the POM between the test passing and failing; I'm already using PowerMock for tests elsewhere in the same project without problem, but this is the first test to parse a Spring xml file with the util namespace.

Does anyone know what's wrong or how to resolve / workaround it?

0 投票
1 回答
3357 浏览

java - PowerMock:如何为 Mockito 做 EasyMock 的 expectPrivate()?

PowerMock 提供了expectPrivate模拟私有方法的方法,但是它只出现在EasyMock api中,而不出现在Mockito API中。

那么,是否有 PowerMockito 的等价物?我猜不是因为我没有找到它,而是因为这个 wiki entry。但这实际上并不能阻止 PowerMockito 解决它。所以,我要求这主要是为了确认,因为我认为这对其他人来说是有价值的。

0 投票
3 回答
4292 浏览

unit-testing - 在同一个 JUnit 测试中同时使用 Arquillian 和 PowerMock

我想在同一个 JUnit 4 测试中同时使用 Arquillian 和 PowerMock 的特性。

问题是这两个产品都是 JUnitRunner应该与 一起使用@RunWith,并且不可能@RunWith在同一个测试类上使用多个,或者将多个Runners 类放在同一个@RunWith注释中。

你知道有什么办法吗?

0 投票
1 回答
4094 浏览

mocking - 如何使用 PowerMock / EasyMock 从模拟方法中获取输入参数

我有一个实体 Person 类。需要测试包含 process() 方法的 ProcessPerson 类。

我需要的是在 process() 方法中创建对象,并通过模拟对象 personDao 的模拟方法 create() 调用。

欢迎任何建议,想法

谢谢

0 投票
2 回答
9883 浏览

java - PowerMock 从@RunWith(PowerMockRunner.class) 注解中抛出异常

我正在尝试让 PowerMockito 与我的应用程序一起工作。我已将库添加到构建路径。我有以下测试类:

当我尝试运行测试时,出现以下异常:

根据PowerMock FAQ,我应该尝试使用旧包。我做到了,但我仍然遇到同样的例外。有任何想法吗?

0 投票
4 回答
128747 浏览

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

我的项目中有一些静态 util 方法,其中一些只是通过或抛出异常。有很多关于如何模拟具有除 void 之外的返回类型的静态方法的示例。但是我怎样才能模拟一个将 void 返回为“ doNothing()”的静态方法?

非 void 版本使用这些代码行:

...

...

但是,如果应用于StaticResources返回void的 a ,编译将抱怨when(T)不适用于 void ...

有任何想法吗?

一种解决方法可能是让所有静态方法返回一些Boolean成功但我不喜欢解决方法。

0 投票
1 回答
865 浏览

java - 使用 Java 反射返回所有空值

我对这个很迷茫。我有一些基于 Spring 使用 JUnit4 运行的验收测试。现在我还想添加单元测试。为了让它们更快,我跳过上下文并使用 PowerMock 注入 Mocks。然而,所有突然的反思将不再起作用。

第二行将返回 null ,就像对该类型的任何其他方法调用一样,除了 getName()

但是,如果我使用上下文,它将起作用:

这里有什么问题?没有任何跑步者或上下文,反射不应该工作吗?

甚至没有添加行

将改变任何东西(认为可能需要初始化类以便能够反映它的运行时)

哦,添加

也不会改变任何东西。

有任何想法吗?

谢谢!

PS:从现在开始将出城一天,所以我会在大约 35 小时内阅读任何答案。


编辑

刚刚弄清楚发生了什么:我在调试器中开始并打开Client.class.declaredMethodsnull. 但是,当我运行getDeclaredMethods()时,它会得到它们。所以看起来好像一切都是空的,这让我感到困惑,但调试器并没有get...()在所有字段上运行,null最初离开了它们

如果我使用 spring 上下文,它将加载所有 bean ( Clientis an @Entity) 并用软引用填充所有反射字段,就像我调用get..()所有它们一样。

0 投票
0 回答
1246 浏览

java - 播放框架 + powermock => classNotFoundException

  • powermock-mockito:1.4.11
  • 模拟:1.9.0
  • 播放:1.2.3

我正在尝试使用 powermock-mockito 模拟最后一堂课。为此,您必须使用 @RunWith(PowerMockRunner) - 注释来注释测试的类。但是 - 我想 - 这似乎混淆了我自己测试的类 DropboxCrawlerTests 导致 ClassNotFoundException 的游戏:

DropboxCrawlerTests.java:

编辑:

完整的堆栈跟踪:

EDIT2:这就是我要模拟的类: http: //semicomplete.com/doc/org/elasticsearch/common/xcontent/XContentBuilder.html

编辑3:

用于测试 DropboxCrawlerTests.java 的基类

实际测试类 DropboxCrawlMultipleFilesTests.java