问题标签 [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.
unit-testing - Powermock - 如何模拟特定方法并使对象的其余部分保持原样
我有一个 Person 类,设置为 FirstName,LastName
执行 TestCase1 的 TestClass
我们可以只模拟一个特定的方法(getLastName)并保留其他所有内容(其他内部字段、函数......原样)吗?
java - 在 NPE 测试结果中使用 PowerMock 获取 ATG Nucleus
我正在尝试测试以下代码:
显然 Nucleus.getGlobalNucleus() 是静态的。
根据文档,我应该能够使用:
不管怎样,当我调用时,我仍然得到一个空指针:
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?
java - PowerMock:如何为 Mockito 做 EasyMock 的 expectPrivate()?
PowerMock 提供了expectPrivate
模拟私有方法的方法,但是它只出现在EasyMock api中,而不出现在Mockito API中。
那么,是否有 PowerMockito 的等价物?我猜不是因为我没有找到它,而是因为这个 wiki entry。但这实际上并不能阻止 PowerMockito 解决它。所以,我要求这主要是为了确认,因为我认为这对其他人来说是有价值的。
unit-testing - 在同一个 JUnit 测试中同时使用 Arquillian 和 PowerMock
我想在同一个 JUnit 4 测试中同时使用 Arquillian 和 PowerMock 的特性。
问题是这两个产品都是 JUnitRunner
应该与 一起使用@RunWith
,并且不可能@RunWith
在同一个测试类上使用多个,或者将多个Runner
s 类放在同一个@RunWith
注释中。
你知道有什么办法吗?
mocking - 如何使用 PowerMock / EasyMock 从模拟方法中获取输入参数
我有一个实体 Person 类。需要测试包含 process() 方法的 ProcessPerson 类。
我需要的是在 process() 方法中创建对象,并通过模拟对象 personDao 的模拟方法 create() 调用。
欢迎任何建议,想法
谢谢
java - PowerMock 从@RunWith(PowerMockRunner.class) 注解中抛出异常
我正在尝试让 PowerMockito 与我的应用程序一起工作。我已将库添加到构建路径。我有以下测试类:
当我尝试运行测试时,出现以下异常:
根据PowerMock FAQ,我应该尝试使用旧包。我做到了,但我仍然遇到同样的例外。有任何想法吗?
static - 如何使用 PowerMock 模拟返回 void 的静态方法?
我的项目中有一些静态 util 方法,其中一些只是通过或抛出异常。有很多关于如何模拟具有除 void 之外的返回类型的静态方法的示例。但是我怎样才能模拟一个将 void 返回为“ doNothing()
”的静态方法?
非 void 版本使用这些代码行:
...
...
但是,如果应用于StaticResources
返回void
的 a ,编译将抱怨when(T)
不适用于 void ...
有任何想法吗?
一种解决方法可能是让所有静态方法返回一些Boolean
成功但我不喜欢解决方法。
java - 使用 Java 反射返回所有空值
我对这个很迷茫。我有一些基于 Spring 使用 JUnit4 运行的验收测试。现在我还想添加单元测试。为了让它们更快,我跳过上下文并使用 PowerMock 注入 Mocks。然而,所有突然的反思将不再起作用。
第二行将返回 null ,就像对该类型的任何其他方法调用一样,除了 getName()
但是,如果我使用上下文,它将起作用:
这里有什么问题?没有任何跑步者或上下文,反射不应该工作吗?
甚至没有添加行
将改变任何东西(认为可能需要初始化类以便能够反映它的运行时)
哦,添加
也不会改变任何东西。
有任何想法吗?
谢谢!
PS:从现在开始将出城一天,所以我会在大约 35 小时内阅读任何答案。
编辑
刚刚弄清楚发生了什么:我在调试器中开始并打开Client.class.declaredMethods
了null
. 但是,当我运行getDeclaredMethods()
时,它会得到它们。所以看起来好像一切都是空的,这让我感到困惑,但调试器并没有get...()
在所有字段上运行,null
最初离开了它们
如果我使用 spring 上下文,它将加载所有 bean ( Client
is an @Entity
) 并用软引用填充所有反射字段,就像我调用get..()
所有它们一样。
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