记中国工商银行软件开发中心北京研发

软件测试:保障软件质量的关键性关口——记中国工商银行软件开发中心北京研发

(2007-12-05 22:14:28)

作者:王冬

在软件项目开发周期中,软件测试环节是保障软件质量的最后一道关键性关口。随着软件开发规模的加大,其分工渐趋专业化,测试作为与开发独立并行的领域已得到业内的高度重视。测试人员的比例不断扩大,逐渐形成一个专门的行业,并拥有其专业化的工具和理论。 中国工商银行软件开发中心已有十年的发展历史,早在创建之初就设立了测试部门。后来随着人员的扩充,测试部分拆为测试一部和测试二部两个一级部,并在各研发部、研发分行建立了隶属于一级部的测试队伍。他们在项目开发过程中积累了大量的实践经验,并摸索总结出了实用性很强的理论知识。为了较深入地了解软件测试技术的现状和发展,测试人才队伍的培养和管理,测试新技术的实际应用等问题,记者走访了中国工商银行软件开发中心北京研发部总经理伊劲松、测试工作负责人李兵。

软件测试已逐渐成为一个行业

“测试这个行业,说新也不新,但是受到重视,确实是近两三年的事。”李兵与记者交流的第一句话就说出了软件测试已成为一个行业。他接下来向记者介绍了测试技术在国内发展的若干阶段。上世纪70年代以前,测试的目的是找问题,找到Bug就算测试有效。但随之

而来的问题是,如果在软件投产之前的测试中发现了大量问题,投产之后又发现了大量问题,那么项目的测试和开发的质量应如何评估;相反地,投产前后都没有发现问题,究竟是因为开发工作做到了完美,还是因为测试工作质量很高测出了所有问题,在此情况下开发与测试工作又该如何评价。

到了上世纪90年代,测试理论发展为,要么发现问题,要么证明程序是对的。到了2000年以后,基本观点变为测试不再是能否发现问题,而是一系列模型中所描述的、从需求分析到开发全过程中的脚本维护和案例管理等。“从这一发展脉络来看,测试已逐渐变成一个行业,并且注重整个过程,还提出了软件测试过程改进等理论。”李兵总结说。

工商银行软件开发中心的测试部门从建立到发展壮大,再到逐步专业化,折射了中国软件测试的发展历程。时至今日,“测试在整个软件开发中已经成为了一个专业的行业或领域,与开发处在两条线上,这是非常重要的。”伊劲松总经理说。她接着向记者介绍了软件开发中心北京研发部的项目开发和测试工作是如何分工合作的。 北京研发部负责软件开发中心的一部分应用开发工作,从环节设置来看,包括了前期的需求设计、整体设计、系统设计、编码、自测、集成测试、系统测试等软件项目开发生命周期中的全部环节。拿到一个项目首先进行需求分析,然后根据项目的技术特点和需求制作总体方案,在方案通过评审以后进行系统设计,并细化为详细设计,直至可以编程的状态,然后进行编码。编码过程中开发人员需自测,运用

代码检查等方法进行白盒测试,此过程标志开发工作初告结束,程序上已可以调通。接下来需将项目的所有环节进行集成,产生界面、业务处理过程和主机账务处理等环节,这个阶段保证功能运行通畅,但测试工作仍比较粗糙。下一步则需进行比较全面的系统测试,遍历项目的所有案例及案例的各种情况,包括边界值的测试和优化需求、解决生产问题的回归测试等。此阶段结束表示系统测试结束,并形成具有完整功能的软件版本。

就上述流程来讲,测试人员从项目开始即开始了工作,他要了解并参与需求的评审,以开始测试设计与系统设计工作,这一过程是与开发人员的工作同步进行的。测试设计包括使用何种策略和案例,是否使用自动测试脚本等。设计结束即要开始准备测试环境和相关测试所需数据,此时开发人员在进行编码和自测。在这些前期工作中,开发与测试是背靠背的,直到集成测试阶段彼此工作内容才进行沟通和合并。

我们在工作中一直是很重视测试工作的。从人员构成上,目前北京研发部的测试与开发人员比例为1:2。在手段上,我们有专业化的测试工具,形成了一套测试的理论和方法。分工上,我们有专人做测试设计,有专门的测试经理,有专门的测试环境准备的方法,还有自动化测试的手段,包括自动化工具产品的支撑。这些都是软件质量的重要保证。”伊劲松说。

人才队伍建设是测试成功的关键

据李兵介绍,北京研发部的测试人员配置,最早是十几个人,现在已有80~90人。从调研结果和一些数据模型来看,测试人员的数量在组织架构管理上是有具体要求的:运行中的测试人员所占比例应达到总人数的33%。软件行业的人才流动性强,而对测试工作的入门要求又相对较低,所以北京研发部的测试人员以工作经验一两年的新员工居多,要做好测试工作,对这批人才的培养就显得尤为重要。 伊劲松向记者介绍了北京研发部新员工入门培训到上手项目的全过程。新员工要参加一个月的岗前培训,之后再对员工进行测试理论、测试规范、测试方法的具体培训,形成对于测试的基本概念。员工到岗位上后先去做一些案例的执行,记录案例测试出的问题。伊劲松介绍说:“我们现在安排一些新员工做模拟客户的体验性测试,因为我们开发的自助渠道上的应用比较多,使用网上银行和电话银行的客户本身不具备一定的金融知识,也不了解系统的了解,所以他们完全可以以普通客户的身份做测试,发现软件中的问题。我们的员工一报到都必须开立网上银行的账户,让他们先熟悉应用的功能再参与到项目中去。我们拿以往积累的案例和脚本让他们进行更有针对性的学习,这样他们就会在具体的项目中成长。”

问起什么样的人适合做测试工作时,李兵打了个有趣的比方:“测试人员有时候要像个侦探。”他同时强调,测试人员一定要懂开发。他说:“在IBM海外公司中,如果老员工去做测试必须做过开发,新员工做了一两年测试以后也要调去做开发,然后再调回来做测试。对

测试人员的培养是一个漫长的过程,入门也许很简单,但是要想做好,其要求是非常高的。”

自动化测试技术的应用和误区

自动化测试技术被认为可大量节省测试的人力投入,但作为软件开发业内专家,伊劲松和李兵认为这是一个认识误区,这一结论至少目前仍处于探讨阶段。自动化测试能够节省人力,但是这与测试对象有关。“重复性很高的动作才需要自动化,如果每次都是新的,就没有办法在项目中积累,根据我们现在的项目情况,开发周期是很短的,如果是新项目,采用自动化测试手段是不现实的,一定会很慢的。”伊劲松说。

自动化测试要求软件版本比较稳定、功能不变,并且由于目前的自动测试基于界面,没有界面就没有办法进行自动化测试。如果界面隔一段时间变化一次,很难进行自动化测试。自动化测试是需要写自动化测试脚本的,相当于用程序去测试程序。“这就成了一个悖论,对脚本的验证还是人在起主导作用,拿这部分来节省人力,实际上是把这部分人力搬了家。”李兵形象地解说道。

伊劲松向记者介绍,在北京研发部,自动化测试主要应用在压力测试上,用来模拟系统压力和并发环境。编写自动化测试脚本的人员都是测试经验丰富的老员工,因为自动化测试需建立在对系统的了解上,要了解到最后会出现什么样的结果,而测试人员要把这些结果全部用程序写出来。此外还要考虑工具、手段及平台的支持,在这个基

础上才能够谈到自动化测试。伊劲松表示:“自动化测试我们在搞,但是应用的比例并不是很大。”

软件测试:保障软件质量的关键性关口——记中国工商银行软件开发中心北京研发

(2007-12-05 22:14:28)

作者:王冬

在软件项目开发周期中,软件测试环节是保障软件质量的最后一道关键性关口。随着软件开发规模的加大,其分工渐趋专业化,测试作为与开发独立并行的领域已得到业内的高度重视。测试人员的比例不断扩大,逐渐形成一个专门的行业,并拥有其专业化的工具和理论。 中国工商银行软件开发中心已有十年的发展历史,早在创建之初就设立了测试部门。后来随着人员的扩充,测试部分拆为测试一部和测试二部两个一级部,并在各研发部、研发分行建立了隶属于一级部的测试队伍。他们在项目开发过程中积累了大量的实践经验,并摸索总结出了实用性很强的理论知识。为了较深入地了解软件测试技术的现状和发展,测试人才队伍的培养和管理,测试新技术的实际应用等问题,记者走访了中国工商银行软件开发中心北京研发部总经理伊劲松、测试工作负责人李兵。

软件测试已逐渐成为一个行业

“测试这个行业,说新也不新,但是受到重视,确实是近两三年的事。”李兵与记者交流的第一句话就说出了软件测试已成为一个行业。他接下来向记者介绍了测试技术在国内发展的若干阶段。上世纪70年代以前,测试的目的是找问题,找到Bug就算测试有效。但随之

而来的问题是,如果在软件投产之前的测试中发现了大量问题,投产之后又发现了大量问题,那么项目的测试和开发的质量应如何评估;相反地,投产前后都没有发现问题,究竟是因为开发工作做到了完美,还是因为测试工作质量很高测出了所有问题,在此情况下开发与测试工作又该如何评价。

到了上世纪90年代,测试理论发展为,要么发现问题,要么证明程序是对的。到了2000年以后,基本观点变为测试不再是能否发现问题,而是一系列模型中所描述的、从需求分析到开发全过程中的脚本维护和案例管理等。“从这一发展脉络来看,测试已逐渐变成一个行业,并且注重整个过程,还提出了软件测试过程改进等理论。”李兵总结说。

工商银行软件开发中心的测试部门从建立到发展壮大,再到逐步专业化,折射了中国软件测试的发展历程。时至今日,“测试在整个软件开发中已经成为了一个专业的行业或领域,与开发处在两条线上,这是非常重要的。”伊劲松总经理说。她接着向记者介绍了软件开发中心北京研发部的项目开发和测试工作是如何分工合作的。 北京研发部负责软件开发中心的一部分应用开发工作,从环节设置来看,包括了前期的需求设计、整体设计、系统设计、编码、自测、集成测试、系统测试等软件项目开发生命周期中的全部环节。拿到一个项目首先进行需求分析,然后根据项目的技术特点和需求制作总体方案,在方案通过评审以后进行系统设计,并细化为详细设计,直至可以编程的状态,然后进行编码。编码过程中开发人员需自测,运用

代码检查等方法进行白盒测试,此过程标志开发工作初告结束,程序上已可以调通。接下来需将项目的所有环节进行集成,产生界面、业务处理过程和主机账务处理等环节,这个阶段保证功能运行通畅,但测试工作仍比较粗糙。下一步则需进行比较全面的系统测试,遍历项目的所有案例及案例的各种情况,包括边界值的测试和优化需求、解决生产问题的回归测试等。此阶段结束表示系统测试结束,并形成具有完整功能的软件版本。

就上述流程来讲,测试人员从项目开始即开始了工作,他要了解并参与需求的评审,以开始测试设计与系统设计工作,这一过程是与开发人员的工作同步进行的。测试设计包括使用何种策略和案例,是否使用自动测试脚本等。设计结束即要开始准备测试环境和相关测试所需数据,此时开发人员在进行编码和自测。在这些前期工作中,开发与测试是背靠背的,直到集成测试阶段彼此工作内容才进行沟通和合并。

我们在工作中一直是很重视测试工作的。从人员构成上,目前北京研发部的测试与开发人员比例为1:2。在手段上,我们有专业化的测试工具,形成了一套测试的理论和方法。分工上,我们有专人做测试设计,有专门的测试经理,有专门的测试环境准备的方法,还有自动化测试的手段,包括自动化工具产品的支撑。这些都是软件质量的重要保证。”伊劲松说。

人才队伍建设是测试成功的关键

据李兵介绍,北京研发部的测试人员配置,最早是十几个人,现在已有80~90人。从调研结果和一些数据模型来看,测试人员的数量在组织架构管理上是有具体要求的:运行中的测试人员所占比例应达到总人数的33%。软件行业的人才流动性强,而对测试工作的入门要求又相对较低,所以北京研发部的测试人员以工作经验一两年的新员工居多,要做好测试工作,对这批人才的培养就显得尤为重要。 伊劲松向记者介绍了北京研发部新员工入门培训到上手项目的全过程。新员工要参加一个月的岗前培训,之后再对员工进行测试理论、测试规范、测试方法的具体培训,形成对于测试的基本概念。员工到岗位上后先去做一些案例的执行,记录案例测试出的问题。伊劲松介绍说:“我们现在安排一些新员工做模拟客户的体验性测试,因为我们开发的自助渠道上的应用比较多,使用网上银行和电话银行的客户本身不具备一定的金融知识,也不了解系统的了解,所以他们完全可以以普通客户的身份做测试,发现软件中的问题。我们的员工一报到都必须开立网上银行的账户,让他们先熟悉应用的功能再参与到项目中去。我们拿以往积累的案例和脚本让他们进行更有针对性的学习,这样他们就会在具体的项目中成长。”

问起什么样的人适合做测试工作时,李兵打了个有趣的比方:“测试人员有时候要像个侦探。”他同时强调,测试人员一定要懂开发。他说:“在IBM海外公司中,如果老员工去做测试必须做过开发,新员工做了一两年测试以后也要调去做开发,然后再调回来做测试。对

测试人员的培养是一个漫长的过程,入门也许很简单,但是要想做好,其要求是非常高的。”

自动化测试技术的应用和误区

自动化测试技术被认为可大量节省测试的人力投入,但作为软件开发业内专家,伊劲松和李兵认为这是一个认识误区,这一结论至少目前仍处于探讨阶段。自动化测试能够节省人力,但是这与测试对象有关。“重复性很高的动作才需要自动化,如果每次都是新的,就没有办法在项目中积累,根据我们现在的项目情况,开发周期是很短的,如果是新项目,采用自动化测试手段是不现实的,一定会很慢的。”伊劲松说。

自动化测试要求软件版本比较稳定、功能不变,并且由于目前的自动测试基于界面,没有界面就没有办法进行自动化测试。如果界面隔一段时间变化一次,很难进行自动化测试。自动化测试是需要写自动化测试脚本的,相当于用程序去测试程序。“这就成了一个悖论,对脚本的验证还是人在起主导作用,拿这部分来节省人力,实际上是把这部分人力搬了家。”李兵形象地解说道。

伊劲松向记者介绍,在北京研发部,自动化测试主要应用在压力测试上,用来模拟系统压力和并发环境。编写自动化测试脚本的人员都是测试经验丰富的老员工,因为自动化测试需建立在对系统的了解上,要了解到最后会出现什么样的结果,而测试人员要把这些结果全部用程序写出来。此外还要考虑工具、手段及平台的支持,在这个基

础上才能够谈到自动化测试。伊劲松表示:“自动化测试我们在搞,但是应用的比例并不是很大。”


相关内容

  • 北京市鼓励企业设立科技研究开发机构实施办法
  • 北京市科学技术委员会关于印发<北京市鼓励企业设立科技研究开发机构实施办法>的通知 2014年05月26日 各有关单位: 为坚持和强化北京作为全国科技创新中心的城市战略定位,贯彻落实<北京市人民政府关于强化企业技术创新主体地位全面提升企业创新能力的意见>(京政发[2013]28 ...

  • 钛晨报:苹果中国研发中心落户北京,要做更适合中国用户的产品
  • 钛媒体 · 2016-09-29 06:51 摘要: 黑莓第二季度净亏损3.72亿美元,关闭手机部门:网上借款后拒不还钱!芝麻信用惩戒"老赖"54万人:名为"免费"实为牟利,侵权网站"BT天堂"站长被刑拘:SAP宣布将投资22亿美元发展物联 ...

  • 北京市"十二五"时期科技北京发展建设规划
  • 北京市"十二五"时期科技北京发展建设规划 2011年09月16日 京政发[2011]46号 "科技北京"建设是北京科技发展的重中之重.为进一步深入落实科学发展观,加快"科技北京"建设,充分发挥"科技北京"对"人 ...

  • 中关村科学城发展规划
  • <中关村科学城发展规划(2011-2015)> 前 言 中关村科学城是指"以中关村大街.知春路和学院路为轴线,东至京藏高速和新街口外大街,南至西北二环.西外大街和紫竹院路,西至西三环.苏州街和万泉河快速路,北至北五环及小营西路以南"的区域,总面积约75平方公里,是中关 ...

  • 2015中国工商银行软件开发中心社会招聘公告
  • 2015中国工商银行软件开发中心社会招聘公告 中国工商银行股份有限公司软件开发中心成立于1996年6月,隶属于中国工商银行总行.目前在珠海.广州.上海.北京和杭州五个城市7个地方办公,下设44个内设机构,是集软件开发.技术研究.技术培训.软件产品应用支持等任务于一体的高新技术产业基地,主要担负全面提 ...

  • 北京市"十二五"时期生物和医药产业发展规划
  • 北京市"十二五"时期生物和医药产业发展规划 北京市经济和信息化委员会 二〇一一年十月 目录 一.发展回顾 (一)产业在快速增长中凸显效益优势 (二)结构在优化升级中突出高端支撑 (三)创新在引领驱动中培育成长潜力 (四)布局在南北两极呈现专业化集聚 (五)产业在节能降耗中推动绿色 ...

  • 郑雨林 先生 - 首页 - 北京理工大学就业信息网
  • 实习生招聘职位信息: ERP 实施顾问 岗位职责: 1.参与央企客户软件项目(财务.资金.供应链.生产.HR 等)的实施工作. 2.与项目经理一起进行客户需求调研.制定实施方案. 3.在项目经理指导下进行具体实施工作,负责系统上线使用及客户培训. 4.为客户提供日常业务支持服务. 岗位要求: 1.在 ...

  • 全国工业设计云服务平台汇总
  • 全国工业设计云服务平台汇总 目 录 中国工业软件云服务平台 ....................................................................................................... 2 北京市工业云产业联盟 ... ...

  • 暑期挂职锻炼总结报告
  • 暑期挂职锻炼 总结报告 教师姓名: 刘雪梅 所在学部: 计算机软件学部 挂职单位:中关村科技园区海淀园 管委会产业发展规划处 挂职岗位: 处长助理 挂职时间: 2009年7月-8月 北京城市学院 计算机软件学部 目 录 一.挂职锻炼单位简介 ............................. ...