Ant build.xml 模版 (JUnit)自动化 增量测试
2011-01-23 04:24
405 查看
转自:http://tech.it168.com/a2008/0904/203/000000203145.shtml
图 1. TestSuite 布局
图 2. Ant XML 构建图
图 3. 项目布局图
图 4. JUnit GUI 测试成功
图 5. JUnit GUI 测试失败
通过使单元测试成为开发过程的一部分,您可以:
自动验证以捕捉更改“臭虫”
从接口角度设计类
提供干净的示例
在发行包中避免代码混乱和类膨胀。
实现 24x7
保证产品的质量要花费很多钱,但如果质量有缺陷,花费的钱就更多。如何才能使所花的钱获得最大价值,来保证产品质量呢?
评审设计和代码。 评审可以达到的效果是单纯测试的一半。
通过单元测试来确认模块可以使用。 尽管测试早就存在,但随着开发实践的不断发展,单元测试逐渐成为日常开发过程的一个部分。
在我 10 年的开发生涯里,为 emageon.com 工作是最重要的部分之一。在 emageon.com 时,设计评审、代码评审和单元测试是每天都要做的事。这种日常开发习惯造就了最高质量的产品。软件在客户地点第一年的当机次数为零,是一个真正的 24x7 产品。单元测试就象刷牙:您不一定要做,但如果做了,生活质量就更好。
<property name="app.name" value="sample" />
<property name="build.dir" value="build/classes" />
<target name="JUNIT">
<available property="junit.present" classname="junit.framework.TestCase" />
</target>
<target name="compile" depends="JUNIT">
<mkdir dir="${build.dir}"/>
<javac srcdir="src/main/" destdir="${build.dir}" >
<include name="**/*.java"/>
</javac>
</target>
<target name="jar" depends="compile">
<mkdir dir="build/lib"/>
<jar jarfile="build/lib/${app.name}.jar"
basedir="${build.dir}" includes="com/**"/>
</target>
<target name="compiletests" depends="jar">
<mkdir dir="build/testcases"/>
<javac srcdir="src/test" destdir="build/testcases">
<classpath>
<pathelement location="build/lib/${app.name}.jar" />
<pathelement path="" />
</classpath>
<include name="**/*.java"/>
</javac>
</target>
<target name="runtests" depends="compiletests" if="junit.present">
<java fork="yes" classname="junit.textui.TestRunner"
taskname="junit" failonerror="true">
<arg value="test.com.company.AllJUnitTests"/>
<classpath>
<pathelement location="build/lib/${app.name}.jar" />
<pathelement location="build/testcases" />
<pathelement path="" />
<pathelement path="${java.class.path}" />
</classpath>
</java>
</target>
</project>
图 1. TestSuite 布局
图 2. Ant XML 构建图
图 3. 项目布局图
图 4. JUnit GUI 测试成功
图 5. JUnit GUI 测试失败
通过使单元测试成为开发过程的一部分,您可以:
自动验证以捕捉更改“臭虫”
从接口角度设计类
提供干净的示例
在发行包中避免代码混乱和类膨胀。
实现 24x7
保证产品的质量要花费很多钱,但如果质量有缺陷,花费的钱就更多。如何才能使所花的钱获得最大价值,来保证产品质量呢?
评审设计和代码。 评审可以达到的效果是单纯测试的一半。
通过单元测试来确认模块可以使用。 尽管测试早就存在,但随着开发实践的不断发展,单元测试逐渐成为日常开发过程的一个部分。
在我 10 年的开发生涯里,为 emageon.com 工作是最重要的部分之一。在 emageon.com 时,设计评审、代码评审和单元测试是每天都要做的事。这种日常开发习惯造就了最高质量的产品。软件在客户地点第一年的当机次数为零,是一个真正的 24x7 产品。单元测试就象刷牙:您不一定要做,但如果做了,生活质量就更好。
<property name="app.name" value="sample" />
<property name="build.dir" value="build/classes" />
<target name="JUNIT">
<available property="junit.present" classname="junit.framework.TestCase" />
</target>
<target name="compile" depends="JUNIT">
<mkdir dir="${build.dir}"/>
<javac srcdir="src/main/" destdir="${build.dir}" >
<include name="**/*.java"/>
</javac>
</target>
<target name="jar" depends="compile">
<mkdir dir="build/lib"/>
<jar jarfile="build/lib/${app.name}.jar"
basedir="${build.dir}" includes="com/**"/>
</target>
<target name="compiletests" depends="jar">
<mkdir dir="build/testcases"/>
<javac srcdir="src/test" destdir="build/testcases">
<classpath>
<pathelement location="build/lib/${app.name}.jar" />
<pathelement path="" />
</classpath>
<include name="**/*.java"/>
</javac>
</target>
<target name="runtests" depends="compiletests" if="junit.present">
<java fork="yes" classname="junit.textui.TestRunner"
taskname="junit" failonerror="true">
<arg value="test.com.company.AllJUnitTests"/>
<classpath>
<pathelement location="build/lib/${app.name}.jar" />
<pathelement location="build/testcases" />
<pathelement path="" />
<pathelement path="${java.class.path}" />
</classpath>
</java>
</target>
</project>
相关文章推荐
- protobuf 测试 & ant build.xml
- 用ant的build.xml构建自动化打包android apk 完全详解(打包系列教程之二)
- Ant+junit的测试自动化
- 用Ant自动测试JUnit(Ant测试自动化--上)
- 使用Ant与Junit进行自动化测试
- 用Ant自动测试JUnit(Ant测试自动化--上)
- junit与ant整合的build.xml的编写-----非常重要,看懂这个,你就懂了ant的90%了
- Ant+junit的测试自动化
- java应用测试报告生成(二):利用ant的build.xml生成测试报告
- Ant+junit的测试自动化
- Ant+junit的测试自动化
- Ant build.xml 模版
- ant 学习(3)--结合junit形成自动化测试小框架
- 《jbpm5-eclipse插件ant安装失败时》---将build.xml文件改为以下文件内容(经测试,该文章用firefox打开最佳)
- eclipse下利ant、junit进行自动化测试例子(源码)
- Ant与Junit配合来实现自动化测试
- A template build.xml for running junit test by ant
- Java_Ant_Web Project完整build.xml文件模板以及Strust2简单示例;
- Junit+Selenium+Maven+SVN+Eclipse+AutoFrame全自动化测试实践实例(一)
- Java Ant build.xml详解