eclipse java 测试_java – Eclipse如何实际运行Junit测试?

要首先回答您的问题,如果您在Ant junit和Eclipse JUnit之间存在差异,那么它可能是类路径或环境问题.最简单的方法是找到在两者之间执行不同的测试并打印出系统属性,并从该方向开始工作.要尝试的另一件事是从Eclipse中运行ant脚本,看看是否有任何区别(因为环境会发生变化)

Eclipse不使用Ant来运行测试.

至于Eclipse如何运行JUnit测试,这里有一个快速概述.请注意:Eclipse JUnit插件中有一些深刻的魔力.

Eclipse有4个JUnit插件,默认情况下都安装在大多数配置中:

> org.eclipse.jdt.junit:git://dev.eclipse.org/org.eclipse.jdt/org.eclipse.jdt.junit.git

> org.eclipse.jdt.junit.core:git://dev.eclipse.org/org.eclipse.jdt/org.eclipse.jdt.junit.core.git

> org.eclipse.jdt.junit.runtime:git://dev.eclipse.org/org.eclipse.jdt/org.eclipse.jdt.junit.runtime.git

> org.eclipse.jdt.junit4.runtime:git://dev.eclipse.org/org.eclipse.jdt/org.eclipse.jdt.junit4.runtime.git

这些是实际CVS存储库的git镜像.上次我尝试使用它们时,它们没有编译,但它们会给你代码,你至少可以将项目导入Eclipse并查看它们.

如果我们忽略配置页面,插件如何创建运行配置,JUnit视图本身的代码以及它如何找到要运行的相关测试,我们可以专注于它如何运行测试.

核心类是org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate和org.eclipse.jdt.internal.junit.runner.RemoteTestRunner. JUnitLaunchConfigurationDelegate读取启动配置并分叉将运行测试的JVM.这个新JVM的主要类是RemoteTestRunner.要运行的测试作为参数传递给分叉的JVM,作为单个测试或作为临时文件中的测试列表,如果您在项目上执行Run as JUnit.如果您正在调试,可以通过选中运行配置中的“调试时保持活动”复选框来保持此新JVM的活动状态.在这种情况下,JVM将保持不变,现有测试的重新运行将通过套接字发送.

RemoteTestRunner运行测试并通过套接字将结果传回Eclipse,然后Eclipse更新JUnit视图.其核心是org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference,它运行测试(对于JUnit 4),以及org.eclipse.jdt.internal.junit4.runner.JUnit4TestListener,它是这些的RunListener.试验. JUnit4TestListener扩展了RunListener,但是没有覆盖testAssumptionFailure,这可能是你的测试在Eclipse中传递的原因. RunListener.testAssumptionFailure是一个空方法,它什么都不做,所以你的通知将被忽略.

我将首先克隆git repos,将项目导入Eclipse并尝试完成代码.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值