其次,日构建有一条非常明确的分界线,开发工作要么是完成,要么是没有完成,不存在第三种状态。
日构建的基础实践
日构建的基础包括三个实践:自动构建、统一代码源和集成测试。
自动构建
自动构建的思路是通过脚本语言,而不是通过在IDE环境中点击构建按钮来完成项目的构建过程。日构建需要不断的进行集成的工作,如果手工来完成这项工作,既费时,效果又不好。所以更聪明的做法是把这件工作给自动化。在早期的Unix环境中,都是采用Make编写相应的脚本来完成构建的过程。随着先进的IDE环境的发展,慢慢的人们就不愿意再编写Make脚本了。可是现在,为了自动构建的目标,我们需要回归到手工编写Make脚本的历史上去。应该说,IDE环境中的构建方式侧重于个人开发,而自动构建则侧重于团队开发
自动构建目标就是通过一个简单的命令就能够全部的构建过程。
统一代码源
其次,保证一个开发团队共享统一的代码源。这时候我们需要使用版本控制工具。共享的代码库同样也是XP的一个基本实践。虽然XP还要求开发人员可以修改他人的代码,但我们并不提倡这种做法,这要求团队成员之间有非常高的默契程度。统一的代码源能够保证所有人的代码都归总到一起,这是日构建的基础。如果没有这一点的保证,每一次的构建我们都不得不把所有人的代码集中起来,这无疑会使构建过程变成灾难。
统一代码源能够保证任何一位团队成员获得所有的代码,并以此为基础进行开发。
集成测试
只是把代码编译通过并不能够证明软件可以正常工作,评价软件的标准应该是测试。在日构建中必须要执行集成测试,来保证软件确实是能够工作的。
集成测试也是一个同义词相当多的名词,有人把它称为验证测试(BVT-Build Verification Tests),因为他们认为这种测试主要的目的是为了验证构建的正确性。有些人把它称为冒烟测试(Smoke Test),因为他们觉得这个测试的目的是运行软件,看它是否会"冒烟"。
测试应该全部执行完毕,而不是遇到未被满足的错误就放弃测试过程。测试将形成结果,成功的测试,失败的测试,失败测试的细节。最后的结果将通过某种方式通知给相应的人员,要求他们修改设计或测试(如果是测试本身的问题的话)。
集成测试是证明构建成功的关键因素。和构建一样,集成测试也应该是自动化的。
日构建的基本工具
日构建的工具有很多,但是最基础、最广泛的工具是Ant(http://ant.apache.org)。Ant类似于Make,但是加入了跨平台的特性。在这个目标的驱动下,Ant摒弃了Make工具的给予Shell的缺点,提供了一种使用XML配置文件的构建方式,并定义了一个统一的微核心和强大的扩展机制。这些特点使得Ant很快被人所接受、推广。目前,Ant的最新版本是1.6.0。
文章来源于领测软件测试网 https://www.ltesting.net/