jjzjj

PrepareForTest

全部标签

java - PowerMock PrepareForTest 注释导致 AmazonSQSClient 构造函数出现问题

我在使用PrepareForTest时遇到了一些问题注释并创建AmazonSQSClient的新实例。我正在编写一个Jenkins插件,不幸的是我需要模拟FormValidation静态类,以确保在对我的插件进行现场验证时生成警告和错误消息。但是,在创建AmazonSQSClient实例时,我得到一个org.apache.http.conn.ssl.SSLInitializationException我已经将它抽象为一个非常简单的例子,这是我的测试文件:packagecom.test;importcom.amazonaws.services.sqs.AmazonSQS;importco

java - PowerMock Mockito [PowerMockito] @PrepareForTest -> java.lang.NoClassDefFoundError : javassist/NotFoundException

我正在尝试在现有的JUnit测试中使用我的第一个PowerMockito[PowerMock+Mockito]模拟。当我只存在类级注释@PrepareForTest(以及@RunWith(PowerMockRunner.class)时,我已经缩小了范围,但没有任何实际的模拟代码),我得到java.lang.NoClassDefFoundError:javassist/NotFoundException:如果我注释掉@PrepareForTest,以及任何实际的模拟代码以消除混杂变量,该错误不会发生;如果我只对@PrepareForTest取消注释,则会发生错误。所以我相信这可以将问题缩

java - 即使在添加 @PrepareForTest 之后,Mockito 仍要求为该类添加 @PrepareForTest

我有以下简单代码。我有一个类(TestClass),我想测试“someMethod”。我的“someMethod”调用了一个外部静态方法。我想Powermock那个静态方法返回给我一些虚拟对象。一开始我有@PrepareForTest(ExternalClass.class),但是当我执行它时出现错误:类ExternalClass未准备好进行测试。要准备此类,请将类添加到'@PrepareForTest'注释。如果您不使用此注解,请在类或方法级别添加注解。请帮我指出我使用@PrepareForTest的方式有什么问题@RunWith(PowerMockRunner.class)@Pre

java - 使用 PowerMockito.whenNew() 不会被 mock ,而是调用原始方法

我有一个类似下面的代码:ClassA{publicbooleanmyMethod(someargs){MyQueryClassquery=newMyQueryClass();Longid=query.getNextId();//somemorecode}}ClassMyQueryClass{....publicLonggetNextId(){//lotofDBcode,executesomeDBqueryreturnid;}}现在我正在为A.myMethod(someargs)编写测试。我想跳过真正的方法query.getNextId()而是返回一个stub值。基本上,我想模拟MyQu

java - 使用 PowerMockito.whenNew() 不会被 mock ,而是调用原始方法

我有一个类似下面的代码:ClassA{publicbooleanmyMethod(someargs){MyQueryClassquery=newMyQueryClass();Longid=query.getNextId();//somemorecode}}ClassMyQueryClass{....publicLonggetNextId(){//lotofDBcode,executesomeDBqueryreturnid;}}现在我正在为A.myMethod(someargs)编写测试。我想跳过真正的方法query.getNextId()而是返回一个stub值。基本上,我想模拟MyQu