powermock
PowerMock 2.0.9
编写单元测试可能很困难,有时必须为了可测试性的唯一目的而牺牲良好的设计。通常,可测试性与良好的设计相对应,但情况并非总是如此。例如,不能使用最终类和方法、私有方法有时需要受到保护或不必要地移至协作者、应完全避免静态方法等等,这仅仅是因为现有框架的限制。
PowerMock 是一个框架,它扩展了 EasyMock 等其他模拟库,使其具有更强大的功能。 PowerMock 使用自定义类加载器和字节码操作来模拟静态方法、构造函数、最终类和方法、私有方法、删除静态初始化程序等。通过使用自定义类加载器,无需对 IDE 或持续集成服务器进行任何更改,从而简化了采用。熟悉受支持的模拟框架的开发人员会发现 PowerMock 易于使用,因为静态方法和构造函数的整个期望 API 都是相同的。 PowerMock 的目标是使用少量方法和注释来扩展现有的 API,以启用额外的功能。目前PowerMock支持EasyMock和Mockito。
在编写单元测试时,绕过封装通常很有用,因此 PowerMock 包含几个简化反射的功能,特别对测试有用。这允许轻松访问内部状态,但也简化了部分和私有模拟。
请注意,PowerMock 主要面向具有单元测试专业知识的人员。把它交给初级开发人员可能会弊大于利。
@PowerMockIgnore
等新功能以及错误修复和其他改进。有关详细信息,请参阅发行说明和更改日志。旧新闻
请在开始之前阅读新贡献者指南。
加入此处的邮件列表以获取问题、反馈和支持。