草庐IT

java - 使用 JMockit 模拟被测类的私有(private)方法

我想模拟一个被测类的私有(private)方法,但是当方法被调用时,方法首先返回false两次,然后它应该返回false。这是我尝试过的代码。这是正在测试的类publicclassClassToTest{publicvoidmethodToTest(){IntegerintegerInstance=newInteger(0);booleanreturnValue=methodToMock(integerInstance);if(returnValue){System.out.println("methodToMockreturnedtrue");}else{System.out.pri

java - JMockit 有什么缺点吗?

这comparison表明,JMockit与其他框架相比有几个优势。是否还有其他(JMock、EasyMock、Mockito、Unitils、PowerMock+Mockito/EasyMock)之一优于JMockit的优势? 最佳答案 我最近采用了一个使用JMockit的项目,我认为由于该库能够模拟静态和私有(private)方法,代码质量肯定会受到影响。测试非常脆弱,因为正在测试私有(private)方法中包含的实现细节(所以如果我更改如何类做某事它可能会破坏测试,即使什么该类没有受到影响)。代码中还充斥着对静态方法的调用——

java - 如何从 JMockit 模拟静态方法

我有一个静态方法,它将从类中的测试方法调用,如下所示publicclassMyClass{privatestaticbooleanmockMethod(Stringinput){booleanvalue;//dosomethingtovaluereturnvalue;}publicstaticbooleanmethodToTest(){booleangetVal=mockMethod("input");//dosomethingtogetValreturngetVal;}}我想通过模拟mockMethod为方法methodToTest编写一个测试用例。尝试如下,它没有给出任何输出@Be

java - JMockit - 初始化问题

当我使用以下测试时,我得到一个警告:WARNING:JMockitwasinitializedondemand,whichmaycausecertainteststofail;pleasecheckthedocumentationforbetterwaystogetitinitialized.这是我的测试实现:packagetest;importstaticmockit.Mockit.*;importjunit.framework.TestCase;importmockit.*;importmockit.integration.junit4.*;importorg.junit.*;im

java - 使用 mockito 或 Jmockit 模拟私有(private)静态最终字段

我在我的类(class)中使用privatestaticfinalLOGGER字段,我希望LOGGER.isInfoEnabled()方法返回false。如何使用mockito或jMockit模拟静态final字段我的类(class)是:importorg.slf4j.Logger;importorg.slf4j.LoggerFactory;publicclassClass1{privatestaticfinalLoggerLOGGER=LoggerFactory.getLogger(Class1.class);publicbooleandemoMethod(){System.out.

java - 使用 JMockit 模拟 Autowiring 的接口(interface)实现

我们正在为一个使用SpringAutowiring注入(inject)依赖项的类编写JUnit测试,该依赖项是接口(interface)的某个实例。由于被测类从未显式实例化依赖项或将其传递给构造函数,因此JMockit似乎也没有义务实例化它。到目前为止,我们一直在使用SpringRunner为我们加载Spring模拟依赖项,这很有效。我们不喜欢的两件事是1)每次运行测试时都必须加载和初始化Spring框架,这并不十分快速,以及2)我们被迫将所有模拟依赖项显式创建为真实类,这JMockit有助于消除。这是我们正在测试的一个简化示例:publicclassUnitUnderTest{@Au