智能一体化测试基础理论——大型IT系统智能一体化测试(1)

发表于:2017-8-22 16:40

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

 作者:陈绍英 许威 金成姬    来源:51Testing软件测试网采编

分享:
  1.3 智能一体化测试核心思想
  1.3.1 智能一体化测试理论核心
  智能一体化测试理论的核心内容主要如下:
   ●后台系统功能与性能测试同时进行
  后台系统服务/接口功能与性能测试可以同步启动与完成,提高功能、性能问题的发现与解决效率。
   ●实现测试尽早启动、问题尽早解决
  最早可以在系统设计阶段启动测试工作,当系统服务/接口设计完成后,就可以进行测试需求分析与测试案例设计。之后一旦后台系统的服务/接口对外发布,就可以启动测试执行工作,这样在系统的开发与集成测试阶段,就可以发现并解决大部分功能、性能问题。
   ●随时高效率执行测试案例全集
  可以随时根据测试需要高效率地执行案例全集。借助智能一体化测试平台,可以以性能测试的效率来快速执行案例,测试执行不再是耗时较多的工作,随时都可以在很短时间内完成全部案例的执行,甚至可以忽略测试执行时间。
  通过运行测试案例全集,可以大幅提高测试覆盖率,从而有效避免以往“由于测试时间不充分只能执行部分测试案例,从而导致一些问题没有被发现”的情形发生。
  因此提倡每次测试时运行全部已经设计完成的测试案例,以保证测试覆盖率。随时运行案例全集,对于已投产系统的升级/变更测试具有更大的意义,可以大大降低系统出问题的风险。
   ●案例集设计与管理是工作核心
  借助智能一体化测试平台,测试人员既不需要开发测试程序,也不需要手工执行测试案例,完全可以将工作中心放在测试设计上。
  在智能一体化测试模式中,测试执行在全部测试工作中占20%左右,测试案例设计在全部测试工作中占50%左右,测试管理等工作占30%左右。
  由于频繁执行测试案例的全集,会及时发现存在问题的测试案例并进行维护,从而保证测试案例全集的有效性且随时可执行。
   ●智能一体化测试平台为支撑
  为推行智能一体化测试,必须研发出一个功能强大的智能一体化测试平台,借助其来完成智能一体化测试的管理与执行。
  1.3.2 接口智能一体化测试平台
  智能一体化测试平台是为支持智能一体化测试理论而开发的平台,这个平台主要面向后台系统的服务/接口测试。借助这个平台,开发&测试人员进行服务/接口测试时可以将工作重心集中在测试案例设计与管理上,测试执行与分析主要交给平台来完成。
  平台主要有5大特点:
  一是对于多数系统进行服务/接口测试时不需要开发测试程序,主要进行测试案例设计工作。普通手工测试人员可以在智能一体化平台上工作,这是能在系统开发&集成测试阶段可以推广智能一体化测试的基础。
  二是测试数据支持与管理功能强大。通过系统内部参数和公共业务测试数据方式,保证测试的可维护性和长期有效性。
  三是功能&性能同步完成,可以实现对系统智能缺陷的早发现、早解决,这种测试方法无疑是最节约成本的做法之一。
  四是测试场景可以极速运行完成。很多时候由于测试执行周期长,回归测试主要执行关键案例,而智能一体化测试平台并行高速执行测试案例,执行效率取决于系统的业务处理能力。对于一个TPS为100笔/秒的系统,每分钟就可以完成五六千个测试案例,执行完成全部案例也就是分分钟的事情,因此执行时间甚至可以忽略。
  五是测试完成后立即生成场景运行报告。测试完成后自动生成的场景运行报告,可以使测试人员一目了然地看到系统的功能、性能问题,从而可以提高测试结果的分析效率。
  智能一体化测试平台与智能一体化测试理论是相辅相成的,只有当智能一体化测试理论与平台同时发挥作用时,才能真正开展起智能一体化测试。
  1.3.3 智能一体化测试终极目标
  智能一体化测试通过将后台系统的服务/接口的功能、性能测试前移,可以实现4个终极目标:一是降低功能与性能测试成本;二是提高后台系统的产品质量;三是加快系统开发与测试进度;四是降低系统的投产运行风险。
  通过改变与优化现有开发/测试/投产流程,遵循测试尽早启动、问题尽早解决这一软件工程原则,提高开发与测试效率。功能与性能测试前移后,成本将会大幅下降,同时产品质量也会得到更好地提升。
  在投产前可以基于案例全集进行充分的验证,系统投产出问题的风险也会大幅降低。
  1.4智能一体化测试实际应用意义
  1.4.1优化流程尽早启动测试
  银行多数IT系统的功能测试通常会在渠道相关部分开发完成后启动,UI没有开发完成前多数系统无法启动测试。对于多数后台系统,典型做法是在功能测试启动之前由开发团队进行一些基本核心业务测试,这种测试往往非常不充分,系统80%缺陷主要在系统测试和UAT测试阶段发现。
  借助智能一体化测试平台,功能测试人员可以在系统设计阶段依据概要设计文档来设计测试案例,在服务/接口对外发布后启动针对后台系统的全面测试,不必等到后台系统与前台渠道联通后再进行测试。通过尽早启动后台系统测试,大量后台系统缺陷可以在开发阶段或系统联调前解决,这大大降低了缺陷修复周期与流转成本,从而推动了整个项目的开发与测试进度。在前期进行了充分的服务/接口测试,系统测试和UAT测试的压力也会大大减轻。
  缺陷早发现、早解决是智能一体化测试的主要出发点之一。按照这样的原则,系统的质量将会得到提升、开发进度将会大大加快、成本将会大幅降低。
  1.4.2同步测试提高测试效率
  智能一体化测试首先实现了后台系统服务/接口功能与性能的同步测试。在进行服务/接口功能测试的同时,可以同步测试系统服务/接口的性能,这样在开发阶段就可以发现并解决大量响应时间较长、线程互锁、SQL效率低下、数据库索引不合理等性能问题。
  这样开展功能与性能测试带来的收益是非常多的,尤其是效率上的提升。例如功能/性能问题的发现与修改周期大大缩短,修改每个功能/性能问题带来的影响也大大降低,而开发与测试成本也会大幅降低。
  借助智能一体化测试平台,能够以性能测试的效率大规模并发执行功能测试案例,从而在很短的时间内执行完成全部测试案例。测试完成后,可以同时生成功能测试报告与性能测试报告。以QTP为例,一台主机往往只能模拟一个用户来运行测试,效率实际非常低下。面向服务/接口的智能一体化测试,测试效率完全取决于系统本身的性能,可以达到每小时执行几十万甚至数百万个案例的运行效率。对于整个测试周期而言,测试场景运行时间甚至可以忽略。
  1.4.3改变测试人员工作重心
  传统的服务/接口自动化测试的执行往往非常耗时。通常测试人员50%左右的时间都耗费在测试执行上,手工/半手工方式逐个执行测试案例是主要的测试执行方式,测试案例设计在日常工作中占20%左右的比例。
  智能一体化测试通过智能一体化平台以性能测试的效率高速来执行案例,可以节省大量的测试执行时间,通常测试执行在测试人员日常工作中占10%左右的比例。
  因此通过智能一体化测试平台进行测试时,测试人员50%以上的精力将会放在测试案例设计上,这无疑将大大提高测试案例的质量,从而可以发现更多的功能、性能问题。
  1.4.4拓展了功能测试的阵地
  对于各家银行的测试团队而言,功能测试人员的主阵地通常在系统测试/UAT测试阶段,这主要是由于测试人员的技术水平决定的。
  借助智能一体化测试平台,不擅长开发的测试人员可以非常容易开展服务/接口智能自动化测试工作,测试团队的武器立刻从冷兵器升级到现代高级武器。
  有了先进的测试工具,测试人员几乎可以开展除单元测试以外的全部与功能、性能相关的测试,测试人员主阵地将大大前移。
  1.4.5开发人员可以测试性能
  通常情况下开发人员不会进行性能测试:一是因为有性能测试团队的存在;二是因为没有合适的工具,毕竟LoadRunner等性能测试工具的使用相对复杂。
  无论如何开发人员肯定会对自己开发的部分进行功能测试。当开发人员使用智能一体化测试平台进行服务/接口功能测试时,性能测试同步完成。对于存在性能问题的交易可以发现问题后直接进行优化,这种解决功能、性能问题的成本无疑最低。
  1.4.6降低了代码变更频次
  较早启动智能一体化测试,很容易做到功能、性能问题早发现、早解决。这种测试方式的缺陷流转周期也会更快更短,从而代码修改频次也会大大降低。
  功能问题与性能问题同步发现,也会避免功能问题与性能问题修改时互相影响,从而减少了代码修改频次。
  1.4.7降低了性能测试成本
  智能一体化测试是一种自底向上的集成测试,大量后台系统如果在开发阶段和集成测试阶段进行了充分的功能、性能测试,将会扫除大量诸如响应时间不达标、索引不合理、低效SQL等基础类性能问题,这种方式无疑会降低大量性能测试的执行和调优成本。
  后台系统完成基础的性能调优后,再开展渠道发起的端到端性能测试将会相对比较容易,无论是测试执行进度还是调优的进度将会大大加快,从而节省了后期性能测试成本。
  1.4.8加快集成/UAT测试速度
  后台系统有了先进的智能一体化测试平台后,可以在各渠道相关功能开发完成前对其进行充分地测试,不再像以前一样依赖外围渠道系统来进行全面的测试。
  后台系统前期做了充分的智能一体化测试,其功能将会比较稳定,从而在集成/UAT测试阶段时更容易定位缺陷,这无疑大大加快了集成/UAT测试进度。可以看出一旦每个后台系统充分遵循问题早发现、早解决的原则,整个项目的进度将会得到更快地推进,避免了很多问题难定位和互相“踢皮球”的情况。
  1.4.9降低变更的投产风险
  通常系统进行生产变更前,主要对系统变更以及变更影响到的部分进行测试,这种测试往往不全面。对于一些非代码类变更,例如修改一些配置项,由于开发管理不规范,往往不太容易确定测试范围,但如果测试不全面又会带来生产问题。
  智能一体化测试平台优势之一是测试执行效率高,借助它可以在每次变更投产前快速进行案例全集的回归测试。这将彻底解决以往投产前回归测试不全面的问题,全面排除潜在功能与性能问题,从而有效降低系统变更上线后的风险。
本文选自《大型IT系统智能一体化测试》第一章,本站经电子工业出版社和作者的授权。
版权声明:51Testing软件测试网获电子工业出版社和作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号