译:Apache Maven-简化java的构建过程--比apache ant更多(3) 集成单元测试

原创 2005年02月25日 18:31:00

集成单元测试


你唯一要做的事情是告诉Maven在那里去找测试代码,剩下的由Maven自动为你完成:
1.在项目对象模型文件 project.xml中,紧接着sourceDirectory元素添加unitTestSourceDirectory元素.
 
            ...
            </sourceDirectory>
            <unitTestSourceDirectory>
                ${basedir}/src/test
            </unitTestSourceDirectory>
            ...
      
2.创建名为BoxTest的测试代码: 文件名:
c:/daven/src/java/smartsoft/daven/BoxTest.java
内容:
            package smartsoft.daven;
            import junit.framework.TestCase;
            
            public class BoxTest extends TestCase{
                public void test1(){
                    Box b = new Box(2,2);
                    assertEquals(4,b.getArea());
                }
            }
      
3.运行java:jar 目标,它将间接的调用java:compile,test:test两个目标
      
maven java:jar
控制台的输出如下:
                      C:/daven>maven jar
            java:prepare-filesystem:
            java:compile:
                [echo] Compiling to C:/daven/target/classes
            java:jar-resources:
            test:prepare-filesystem:
            test:test-resources:
            test:compile:
                [javac] Compiling 1 source file to C:/daven/target/test-classes
            test:test:
                [junit] dir attribute ignored if running same VM
                [junit] Running smartsoft.daven.BoxTest
                [junit] Tests run: 1, Failures: 0, Errors: 0
            BUILD SUCCESSFUL
            Total time:  10 seconds
      

资源库组织jar文件

Maven's Repository Organizes Jar Files
Most projects use third-party libraries in the form of jar files. The repository is a special
Maven mechanism for organizing the jar files and other dependencies that your builds use.
(Maven also uses the term artifact to refer to dependencies.) The repository essentially is a
folder with a Maven-specified structure, and it solves two problems. First, it provides a central
location for all the jar files and other build dependencies you need to build your projects.
Second, it helps deal with version issues by proposing a naming convention. The following is the
structure of a Maven repository: /repository jdo jars kodo-1.1.jar kodo-1.2.jar jdoInterfaces-1.0.jar filters jars jxFilter-1.0.jar jxFilter-1.1.jar

Or, more generally: /repository/groupId/type/artifactId-version.ext
Thus, for kodo-1.1.jar, jdo is the groupId, jar is the type of dependency, kodo is the artifactId,
and 1.1 is the version. These elements will be represented in your POM.



Maven supports a local repository and a shared network repository. It first checks the local repository,
and if it doesn't find the jar file, it checks the shared repository. Maven caches jar files from the
shared directory in the local directory.

Determining Project Dependencies Maven's repository feature is closely related to the way Maven deals with project dependencies.
In Ant, you have to create a classpath to indicate which jar files your project depends on,
while Maven uses the dependencies element in project.xml for that purpose. Add a jar file dependency to your project to see how this works. Add the following block of
code to project.xml, below the currentVersion element but above the build element: ... <CURRENTVERSION>1.0</CURRENTVERSION> <DEPENDENCIES> <DEPENDENCY> <GROUPID>jdo</GROUPID> <ARTIFACTID>kodo</ARTIFACTID> <VERSION>2.5.2</VERSION> </DEPENDENCY> </DEPENDENCIES> <BUILD> ... In order for this tag to work, the following jar file must exist: /repository/jdo/jars/kodo-2.5.2.jar Multiple goals use the dependency tag. For example, the compile goal uses it to generate
the classpath, and the deploy goal uses it to determine which jar files to copy.

译:Apache Maven-简化java的构建过程--比apache ant更多(1) 未完成

    原文: Apache Maven Simplifies the Java Build Process—Even More Than Ant                http://www....
  • httpnet
  • httpnet
  • 2005年02月24日 19:48
  • 1162

译:Apache Maven-简化java的构建过程--比apache ant更多(2) 创建一个简单的maven项目

遵照下面的步骤创建一个简单的maven项目和运行几个maven目标1.创建项目目录C:/daven2.创建java源代码的存放目录C:/daven/src/java3.创建与包结构相同的目录结构C:/...
  • httpnet
  • httpnet
  • 2005年02月24日 23:34
  • 1303

Apache Ant简介

用一句话介绍Ant就是执行一系列定义好的过程,就像Make一样。像很多的自动化脚本一样,但是还额外提供各个target之间的依赖关系管理。由于Ant没有包依赖管理,所以转Maven的挺多的,但不管怎么...
  • hongchangfirst
  • hongchangfirst
  • 2015年11月18日 11:29
  • 989

java压缩与解压缩文件(利用apache的ant.jar) .

zip扮演着归档和压缩两个角色;gzip并不将文件归档,仅只是对单个文件进行压缩,所以,在UNIX平台上,命令tar通常用来创建一个档案文件,然后命令gzip来将档案文件压缩。 Java I/O...
  • smile725775
  • smile725775
  • 2012年11月25日 19:32
  • 8535

使用Apache Ant构建工具

 官方定义:http://jakarta.apache.org/ant/index.html Apache Ant is a Java-based build tool. In theory, it ...
  • vannachen
  • vannachen
  • 2006年11月30日 19:30
  • 2757

java使用Apache的ant压缩和解压文件(zip)

调用ant里的方法可以完好的实现包括中文在内的zip的压缩与解压 具体实现代码如下: import java.io.File; import java.io.FileInputStream; ...
  • yaohucaizi
  • yaohucaizi
  • 2013年04月28日 15:48
  • 2047

apache ant 的安装与使用

团队协作式的开发项目时,svn和git起到管理代码的作用,而我们需要的是一个可以编译好可以发布的产品,这时候就需要有一个规范的编译工具了,由于开发人员所使用的环境各有不同,比如开发java项目时,不同...
  • MEdwardM
  • MEdwardM
  • 2016年11月01日 11:21
  • 2571

Java单元测试进阶之单元测试利器JUnit(Ant与持续集成)

使用testSuite有一些缺点,当你增加新的TestCase的时候,你的TestSuite也要相应的修改,而且还是手工的修改,这样如果持续修改的话是让人受不了的。         使用Eclips...
  • lykangjia
  • lykangjia
  • 2015年05月02日 14:30
  • 695

软件测试_JUnit+Ant构建自动的单元测试(1)

JUnit Ant 单元测试
  • Cceking
  • Cceking
  • 2016年06月16日 18:33
  • 661

Apache Ant安装及使用

转自:http://guiheji.blog.sohu.com/107658245.html ant是jakarta一个非常好的OpenSource子项目,是基于java的编译工具。下面简单介绍一下在...
  • nivana999
  • nivana999
  • 2011年06月05日 15:54
  • 6438
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:译:Apache Maven-简化java的构建过程--比apache ant更多(3) 集成单元测试
举报原因:
原因补充:

(最多只允许输入30个字)