浅谈持续集成构建在互联网软件测试项目中应用与分析

发表于:2013-6-14 14:32

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:王亮    来源:51Testing软件测试网采编

分享:

  2、互联网软件测试特点

  1)不断创新,改变易用性,留住用户

  在互联网软件开发过程中,我们往往关注点会集中在用户体验、软件的创新及能为用户带来的价值,所以必须建立在用户体验基础上进行创新,留住用户,改变易用性,是互联网软件开发与测试的首要特点。

  2)采用敏捷的开发测试思维,快速实现新功能,快速修复线上bug

  基于创新的思维决定了我们在互联网行业的软件开发过程中,必须采取小步快走、版本微创新和快速获取用户反馈,只有这样才能体验客户第一,改变软件服务的对象观念。第二个互联网软件开发测试的特点就是快,行业觉得要快速实现新功能并快速发布,快速修复线上存在的问题。

  在很多互联网公司,开发和测试团队往往是技术团队的主力军,信息更新快捷和项目需求发布的频繁,很多程度上与传统软件开发和测试过程分离开来,组成比较小的团队进行软件开发与测试,这样有利于处理需求的响应速度的提升,也有利软件开发过程的风险和资源管理。

  3)采用的工具协助敏捷开发测试过程,提出了自动化测试

  大家知道,如果缩短软件开发和测试过程的时间,在保证需求质量的前提下,我们必须提供我们的过程效率,那么如何提高呢?这里就引起在互联网软件项目中的自动化测试,尤其在软件测试过程,自动化测试不仅仅是测试技能的提升,更是能给测试工程师乃至整个研发团队带来质的价值和创新,是真正提高了整个研发过程的效率。自提出自动化测试以后,工程师不断研究与实践,发现自动化脚本与更新维护成本非常大,久而久之维护的工作量已超出预期评估时间,这样导致要花大量的资源投入自动化维护,增加成本,经过大量项目实践与分析,在互联网行业的自动化不能是单纯的基于页面UI功能自动化,必须基于架构进行分层设计自动化,深化自动化技术和平台化的服务,做到持续集成才更有效。

  3、敏捷测试思维

  通过了解互联网系统架构和软件开发测试过程,我们必须改变以往的测试思维和测试策略,抓住Web软件测试的特点综合选取更适合的方法去运用,直到提出持续集成构建,才在项目中慢慢推广应用起来,其实就是采用敏捷的开发过程和测试思维相结合,把软件开发整个过程质量控制提到上游。

  四、持续集成介绍

  1、持续集成是什么

  大师Martin Fowler对持续集成是这样定义的: 持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。

  在敏捷开发与测试中,持续集成是极限编程十二实践之一(1999年Kent Beck编写的《解析极限编程》),最初被使用极限编程方法的开发人员所推捧,并在过去的几年中得到广泛应用,成为业界广为人知的软件开发实践。该实践用于解决软件开发过程中一个具体且重要的问题,即“确保当某个开发人员完成新的功能或修改代码后,整个软件仍旧能正常工作。”

  简单来说,持续集成是频繁、持续的在多个团队成员的日常工作中进行集成、验证并反馈。一个典型的持续集成周期基本包含如下几个步骤:

  1)持续集成服务器不断从版本代码库的服务器上检查代码状态,看代码是否有更新;

  2)若发现代码有最新的提交,集成服务器就会从版本代码库服务器下载最新的代码;

  3)等代码完成更新结束后,持续集成服务器调用自动化编译脚本进行代码编译;

  4)运行所有的自动化测试;

  5)进行代码分析

  6)输出可执行的软件,提高给测试人员进行最后的测试与验证

  7)通过测试工程师的测试与验证,最后发布集成到发布

  通过上面的持续集成构建步骤我们不难知道,其实持续集成就是一个循环、多次运用、统一检查的过程,如图-2所示描述

图-2

62/6<123456>
价值398元的测试课程免费赠送,填问卷领取吧!

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海漕溪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号