青年IT男

个人从事金融行业,就职过易极付、思建科技、某网约车平台等重庆一流技术团队,目前就职于某银行负责统一支付系统建设。自身对金融行业有强烈的爱好。同时也实践大数据、数据存储、自动化集成和部署、分布式微服务、响应式编程、人工智能等领域。同时也热衷于技术分享创立公众号和博客站点对知识体系进行分享。微信公众号:青年IT男。

JMockit配置

JMockit配置

在Maven pom.xml配置

  <dependency>
    <groupId>org.jmockit</groupId>
    <artifactId>jmockit</artifactId>
    <version>1.36</version>
    <scope>test</scope>
  </dependency>

JUnit4.x及以下用户特别注意事项

如果你是通过mvn test来运行你的测试程序 , 请确保JMockit的依赖定义出现在JUnit的依赖之前。

<!-- 先声明jmockit的依赖 -->
   <dependency>
    <groupId>org.jmockit</groupId>
    <artifactId>jmockit</artifactId>
    <version>1.36</version>
    <scope>test</scope>
  </dependency>
<!-- 再声明junit的依赖 -->
   <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.9</version>
    <scope>test</scope>
  </dependency>

如果你是在Eclipse中运行/调试你的测试程序, 需要确保JMockit出现在JUnit之前。你可以提供Up,Down来调整。

JMockit Coverage配置

如果你还需要使用JMockit的代码覆盖率功能,你需要在Maven pom.xml中如下定义


<plugin> <artifactId>maven-surefire-plugin</artifactId> <configuration> <argLine>-javaagent:"${settings.localRepository}/org/jmockit/jmockit/1.36/jmockit-1.36.jar=coverage"</argLine> <disableXmlReport>false</disableXmlReport> <systemPropertyVariables> <coverage-output>html</coverage-output> <coverage-outputDir>${project.build.directory}/codecoverage-output</coverage-outputDir> <coverage-metrics>all</coverage-metrics> </systemPropertyVariables> </configuration> </plugin>

常见错误

java.lang.IllegalStateException: Native library for Attach API not available in this JRE

Caused by: java.lang.UnsatisfiedLinkError: no attach in java.library.path

遇到这种情况,你是用JRE来跑测试程序的,需要切换成JDK才可以。

0
青年IT男

个人从事金融行业,就职过易极付、思建科技等重庆一流技术团队,目前就职于某网约车平台负责整个支付系统建设。自身对金融行业有强烈的爱好。同时也实践大数据、数据存储、自动化集成和部署、分布式微服务、响应式编程、人工智能等领域。

You must be logged in to post a comment

This site is protected by wp-copyrightpro.com