如何在Tycho的eclipse-plugin打包单元测试中将Mockito加入测试类路径
解答
可用方案说明
非OSGI运行方案(匹配你初期需求,无额外非PDE文件)
该方案完全基于PDE原生能力,不需要调整现有pomless构建规则,也不需要使用fragment:
- 确保你使用的Tycho版本≥3.0,你提到的两项测试能力均在该版本正式支持,默认适配pomless构建场景
- 将Mockito及其依赖Jar包(通常为mockito-core、byte-buddy、objenesis)放入插件项目的
lib目录下 - 打开项目根目录下的原生PDE配置文件
build.properties,添加配置:test.extraClasspath = lib/mockito-core.jar, lib/byte-buddy.jar, lib/objenesis.jar - 在项目
.classpath文件中将上述lib下的Jar包标记为测试依赖,添加test="true"属性即可,本地PDE环境和Tycho构建都会自动将这些依赖加入测试类路径,直接运行普通JUnit测试即可。
OSGI环境运行可选方案
如果后续需要在OSGI容器中运行测试,同样可以不使用fragment:
- 在你现有的PDE
.target平台配置文件中添加Mockito的OSGI bundle依赖 - 在
build.properties中添加配置:tycho.testRuntime = equinox - Tycho构建时会自动将target platform中的测试依赖加载到Equinox运行环境的类路径中,全程不需要新增非PDE配置文件。
内容的提问来源于stack exchange,提问作者Jörn Guy Süß
相关产品推荐
相关产品推荐

