目标测试代码
WinportUrlService
package jmockit.target;
public interface WinportUrlService {
boolean hasWinport(String memberId);
String getWinportUrlThrowException(String memberId);
}
WinportBaseService
package jmockit.target;
public class WinportBaseService {
public long getPostedOfferCounts(String memberId) {
return 1000;
}
}
WinportUrlServiceImpl
package jmockit.target;
public class WinportUrlServiceImpl extends WinportBaseService implements
WinportUrlService {
public boolean hasWinport(String memberId) {
return true;
}
public String getWinportUrlThrowException(String memberId) {
throw new RuntimeException();
}
}
OfferPostAction
package jmockit.target;
public class OfferPostAction {
private WinportUrlServiceImpl winportUrlService = new WinportUrlServiceImpl();
public boolean hasWinport(String memberId) {
return winportUrlService.hasWinport(memberId);
}
public String getWinportUrlThrowException(String memberId){
return winportUrlService.getWinportUrlThrowException(memberId);
}
public long getPostedOfferCounts(String memberId){
return winportUrlService.getPostedOfferCounts(memberId);
}
}
附件为源代码。
分享到:
相关推荐
JMockit使用Java代理(Java代理API)和字节码操作(ASM库)来在运行时修改类的行为。通过在测试运行期间动态插入模拟代码,它能够替换实际的依赖项,从而允许测试代码独立于外部系统或不可控因素。 3. **主要特性*...
5. **动态代理(Dynamic Proxy)**:JMockit使用Java的动态代理技术来实现模拟和验证,这使得它可以模拟静态方法和final类,这是许多其他模拟框架无法做到的。 6. **兼容性**:JMockit与JUnit、TestNG等流行的测试...
这个“jmockit使用例子”很可能会涵盖如何利用JMockit进行测试的基本步骤,以及如何改变静态方法的模拟实现。 在Java开发中,单元测试是确保代码质量的重要环节。然而,当涉及到依赖于外部系统、静态方法或不可控...
正如其名,在单元测试时,CUT(Code Under Test ,被测试代码)可能会依赖其他代码,可以使用JMockit API来mock被依赖的代码,从而进行隔离测试。 JMockit有两套API,mock API用来进行mock测试;mock-up API用来...
6. **兼容性与易用性**:JMockit 1.6很好地兼容了JUnit 4和JUnit 5,使得已经习惯于使用JUnit的开发者无需改变测试框架,就能享受到JMockit的强大功能。其API简洁明了,易于理解和使用。 在实际应用中,我们可以...
jmockit框架所使用jar包,在写单元测试的过程中我们会发现需要测试的类有很多依赖,这些依赖的类或者资源又会有依赖,导致在单元测试代码里无法完成构建,我们应对的方法是Mock。简单的说就是模拟这些需要构建的类...
在"Mocking.mht"和"Faking(伪实现).mht"这两个文件中,详细地讲解了上述各个知识点的使用方法和示例,通过阅读这些文档,开发者可以深入理解并熟练掌握JMockit的使用技巧,提升单元测试的效率和质量。
- **动态代理**:JMockit使用Java的动态代理机制来实现模拟,无需修改被测试代码。 - **模拟静态方法**:对于难以测试的静态方法,JMockit可以提供解决方案。 - **模拟构造器**:Jockit可以模拟类的构造器,控制...
在 JMockit 中,你可以使用 `@Mocked`、`@NonStrict` 和 `@Injectable` 等注解来指定要模拟的依赖。`@Mocked` 默认模拟所有方法,包括私有、静态、最终和原生方法。如果模拟的是类,其父类也会被递归模拟,除非是 `...
本文将深入探讨JMockit的基本概念、使用方法以及它如何帮助提升测试效率。 一、JMockit简介 JMockit是一款开源的Java测试框架,它允许开发者在测试中模拟任何Java类或接口的行为。这个工具的核心特性在于其模拟...
综上所述,JMockit是一款功能强大且易于使用的测试框架,它不仅能够帮助开发者创建高效的单元测试,还能支持更为复杂的集成测试场景。通过对模拟和伪装技术的灵活运用,以及对代码覆盖率的精细控制,JMockit成为了...
使用JMockit Coverage非常简单,只需在项目中引入`jmockit-coverage-0.999.4.jar`库,并在测试运行时指定相应的覆盖率参数。例如,在Maven项目中,可以在`pom.xml`中添加插件配置,或者在命令行运行测试时添加系统...
5. **Mock本地方法(Native)**:虽然Java的本地方法(使用`native`关键字定义)通常不用于单元测试,但JMockit也支持对其进行模拟。 在录制期望时,你可以指定方法的参数、返回值以及期望的调用次数。例如,你可以...
jmockit-1.7.jar JMockit最新工具包
jmockit-0.999.2.jar
JMockit教程.pdf这个文档,很可能是对JMockit的全面介绍和使用指南,涵盖了从基本概念到高级特性的方方面面。在这个教程中,你可能会学习到以下关键知识点: 1. **模拟(Mocking)与插入(Stubbing)**:JMockit的...
jmockit jar包
JMockit是一款广泛使用的Java单元测试框架,尤其在模拟和mocking对象方面表现卓越。它提供了简洁、灵活且高效的API,使得开发者能够在测试代码中轻松地模拟任何Java类或接口的行为。在1.2这个版本中,JMockit继续...
这个项目包括了对不同类型的模拟方法的测试用例,有助于理解Jmockit的工作原理和使用方式。 通过熟练掌握Jmockit,你可以编写出更加健壮和可维护的单元测试,确保代码的质量和稳定性。在实际项目中,Jmockit可以...
通过一系列具体示例和概念解析,帮助读者全面掌握JMockit的核心功能及其实现细节。 #### 二、什么是Mock? 在软件开发领域,“mock”是指用于替代实际对象的模拟对象,以帮助完成单元测试。其目的是模拟依赖项的...