关于ant跑覆盖率的问题

问题描述

现在有一个项目是struts+spring+ibatis的架构。需要用ant来批量跑junit和覆盖率,由于本人没有这方便的经验,一直没有调试出来。希望有此经验者不吝赐教。如果手头有以前项目的成品,或者类似的东西的也请共享下,谢谢了!现在编译是没有问题的,但是跑junit的时候case跑不过(eclipse下全成功.没有跑通的case好像都是一个原因:private CnxLogger logger = CnxLogger.getLogger(VMBHDM001LogicImpl.class);出nullpointException请大家帮忙看看:<target name="runtest" depends="instrument"><delete dir="${junit.work.dir}"></delete><mkdir dir="${junit.work.dir}"></mkdir><delete dir="${junit.report.dir}"></delete><mkdir dir="${junit.report.dir}"></mkdir><junit printsummary="yes" fork="yes" dir="${project.test.dir}"><!-- avoid error: Exception in thread "main" java.lang.ClassFormatError: LVTT entry for 'clazz' in .. --><jvmarg line="-noverify"></jvmarg><classpath location="${jcoverage.lib.dir}/jcoverage.jar"></classpath><classpath location="${build.instrumented.dir}"></classpath><classpath refid="classpath.run"></classpath><classpath><pathelement location="${build.classes.dir}"></pathelement></classpath><formatter type="xml"></formatter><batchtest todir="${junit.work.dir}"><fileset dir="${build.classes.dir}"><include name="**/base/**/*Test.class"></include><include name="**/framework/**/*Test.class"></include></fileset></batchtest></junit><junitreport><fileset dir="${junit.work.dir}"><include name="TEST-*.xml"></include></fileset><report format="frames" todir="${junit.report.dir}"></report></junitreport></target> 问题补充:<div class="quote_title">soartju 写道</div><div class="quote_div">自动测试的环境是不是有问题,如果eclipse没有问题,看看自动测试环境下相关的依赖包有没有冲突,有没有缺少的包。<br /><br />从异常上看,应该不会有null pointer的异常才对,因为没有实例变量,你给的异常信息有没有错?</div><br /><br />包冲突,少包的情况应该没有。eclipse和ant的环境肯定是有区别的。不知道用ant来跑还需要什么别的配置否?eclipse里面跑的时候,有框架可依附。所以,自己另外用ant跑的时候,是不是也要做点什么事情?比如项目中的log4j文件之类的要做copy到哪儿?需要改动什么信息?<br />望大家多多帮忙!

解决方案

除了包以外,检查一下jdk运行环境,eclipse和ant的有可能不一样。具体如何配置ant的jre,你自己找一下再试试看。
解决方案二:
把异常详细信息贴上来看看
解决方案三:
自动测试的环境是不是有问题,如果eclipse没有问题,看看自动测试环境下相关的依赖包有没有冲突,有没有缺少的包。从异常上看,应该不会有null pointer的异常才对,因为没有实例变量,你给的异常信息有没有错?

时间: 2024-11-13 06:43:14

关于ant跑覆盖率的问题的相关文章

关于ANT

问题描述 就是我写一个东西,用ANT去获得SVN里面的最新版本项目,设计一个时间用去查看SVN中项目的最新版本,如果有更改就把它下载下来 求各位大虾高手们给详细代码.. 问题补充:luckaway 写道 解决方案 http://cruisecontrol.sourceforge.net/ 下载最新的下来干嘛用的?持续集成工具cruisecontrol能否满足的你的需求,它会自动下载最新,然后自动调用ant跑单元测试

ant构建时添加djunit任务的问题

问题描述 请问一下:1.我在构建脚本中加入了djunit,使用jcoverage计算覆盖率,但是在eclipse下能跑通的单元测试代码在ant中却不能完全跑通,经检查是有的类不能加载,比如读取配置文件的类,因为配置文件不能被注入到jcoverage当中.请问这个问题该如何解决才能与eclipse的djunit插件保持同步呢个?2.我在构建脚本中新添了比如djunit,jcoverage,javadoc等一些子任务后,在运行构建脚本的时候有几个服务的javac编译会资源不足,在设定该服务的Java

Web端PHP代码函数覆盖率测试解决方案

1. 关于代码覆盖率 衡量代码覆盖率有很多种层次,比如行覆盖率,函数/方法覆盖率,类覆盖率,分支覆盖率等等.代码覆盖率也是衡量测试质量的一个重要标准,对于黑盒测 试来说,如果你不确定自己的测试用例是否真正跑过了系统里面的每一行代码,在测试的完整性上总要打些折扣.因此,业界几乎对各种编程语言都有自己的一套代 码覆盖率解决方案.世界上最美的语言PHP当然也不例外.PHPUnit和Spike PHPCoverage提供了一套基于xdebug的代码覆盖率测试方案.在本文中,我将针对自己碰到的特定业务场景

使用EMMA测量测试覆盖率

介绍测试代码覆盖率的重要性 测试驱动开发(TDD)是极限编程的一个重要特点,它具有很多优点,并被越来越多的开发人员所接受.在测试驱动开发过程中,程序员经历了编写测试用例,实现功能,重构代码这个不断迭代的过程.实践证明,这个过程能显著提高我们的生产效率,并产生高质量的代码.它还能给我们以自信,让我们放心的重构自己的代码. 测试代码确实能够保证代码的质量,但如果你以为自己已经写了一堆测试用例,并都能运行通过时,就能高枕无忧了,那么你错了.隐藏的 Bug 也许只是在等待时机让你的系统崩溃.这是什么原因

覆盖率测试工具(coverage tool)

java: Emma:优点:1 开源软件:2 支持ANT TASK;Emma 是开源的,同时它对应用程序执行速度的影响非常小. 缺点:1 ANT TASK的参数指定较弱,coverage参数需要追加配置文件. EMMA是一个免费且开源的Java代码覆盖率测试工具,100%纯Java编写,不依赖与任何第三方库.和其他代码覆盖率测试工具不同,EMMA支持大型项目的团队开发,每个开发人员都可以从中受益. EMMA通过对Class文件进行增强以测试覆盖率,它提供了Offline和Fly两种模式,在Fly

使用jenkins+Emma统计Android客户端单元测试覆盖率

这两天看了一下统计Android单元测试代码覆盖率的知识,看了一下比较简单. 代码覆盖率的作用主要是用来查看测试用例执行完毕后,有哪些代码尚未覆盖到,未覆盖到的代码通常意味着未覆盖到的功能或场景,选用的开源软件Emma. 第一步:把被测工程生成Ant build文件,andriod-app就是工程名 android update project -p android-app 第二步:将andriod测试工程也转换成ant工程,-m选项指定了测试工程对应的主andriod工程的位置,而androi

个人云服务迅速发展,2015年覆盖率将达90%

国外媒体称,全球著名调研机构Gartner在周三对外宣布,预计个人云服务将在三年内普遍覆盖到消费设备中.等到2015年时,基于用户存储.内容同步以及分享网络内容的个人云服务,在消费者产品设备中的覆盖率将会达到90%. Gartner表示,未来的技术供应商需要扩展包括平板电脑.智能机.电视和PC等在内的多产品服务,这样才可以获得更高的回报.等到2012年,相应的产品内容设备及服务总收入额将突破2.2万亿美元. Gartner分析师安德鲁·约翰逊(Andrew Johnson)称,消费人群已渐渐学会

中国移动集团客户总数达315万家覆盖率40.4%

飞象网讯 (霏雯/文)记者日前从中国移动获悉:中国移动集团客户总数已达315万家,较去年同期增长9.8%,客户覆盖率为40.4%,其中重要集团客户覆盖率67.8%. 集团客户是近年来电信市场的新蓝海.继三年前中国移动在总部成立集团客户部后,其全国各公司也纷纷从各业务线抽调精兵强将成立集团客户机构,对集团客户市场形成专业化运营之势. 记者了解到,中国移动内部各级公司都在全力拓展集团客户市场,客户增长速度不断加快.今年8月,中国移动集团客户较上月净增4万家,集团成员较上月净增233.1万户,总数达到

使用Ant编译Hadoop工程报错

在win7用Ant编译hadoop工程的时候,遇到了一个报错,如下: org.eclipse.core.runtime.CoreException: D:\workspace\hadoop-1.1.2\build.xml:83: Execute failed: java.io.IOException: Cannot run program "sed" 打开build.xml文件,找到sed,然后把注释掉即可,这段内容是为了替换苹果系统的空格的,但是..Windows出错啦,也难怪,因为