初期实施阶段:
1.部署Mercury Quality Center服务器。依照原先的邮件流转过程配置其TestDirector的缺陷管理流程,为每个保险业务的开发小组和测试团队分配相应的用户许可证,首先要求所有正在测试和将要进行测试的项目都必须通过这一缺陷管理流程进行缺陷递交和处理,原有邮件方式取消。并安排和培训一名测试管理工程师负责接受测试流程的改进意见和负责流程优化工作,以逐步完善流程管理自动化。
2.部署Mercury QuickTest Professional。选择Mercury QTP而非WinRunner和其它产品的考虑主要出于它对新应用平台的广泛支持性,和用户的易学易用性,可以使测试团队比较快的上手使用,并随着为当前的项目建立和运行最初的自动化测试,获得软件测试自动化尝试的信心。但目前对美科利(Mercury)建议的Business Process Testing不作考虑。
中期实施阶段:
1.通过Mercury集成Rational的需求管理工具RequisitePro,以实现测试需求的管理。并利用现有的Mercury Quality Center平台引入测试案例管理流程,把所有基于Word和Excel的旧有案例,利用美科利(Mercury)提供的转换工具导入到TestDirector中去,从而建立可被参考和追踪的测试案例库。同时由测试部门协调整个执行过程,对测试环境,测试数据,被测系统(SED)的调配实现统一管理,避免可能存在的各部门竞争测试资源的状况。
2.部署Mercury LoadRunner。从测试团队中分化出专职的性能测试自动化工程师和小组。和业务部门协调,建立A公司应用系统上线性能指标。值得注意的是由于A公司的应用系统的地域分布性,在通过公司内网远程执行LoadRunner测试案例时受到现有网络带宽的限制,很难达到测试成果。尽管美科利(Mercury)公司建议A公司引进美科利(Mercury)的Performance Center平台以实现整合和远程操控,由于公司预算和目前对性能测试的技能尚不足以建立整合平台,A公司最终没有采纳。最后,由于性能测试通常是在业务应用经过了一轮的系统测试以后进行的,A公司决定把性能测试实验室环境集中在一处,并不需要做性能测试的应用发布到该实验室进行统一测试。
3.对已经开始的功能测试自动化进行优化,从测试小组中筛选出自动化测试专家,负责A公司自动化测试库的建立,进一步提升软件测试自动化的价值。
长期实施阶段:
1.由于自动化测试管理的进行,测试缺陷和测试案例已被大量收集,过程也正在逐步优化。A公司考虑在Quality Center平台上考虑实现“软件质量门户”的思想,即和公司应用软件质量相关的信息都通过这个平台来得到,相关的流程都可以通过这个平台来实现。其中包括了作为一个质量门户必须提供的针对软件质量管理和软件测试过程中不同人员角色所定义的视图,衡量软件质量和测试流程效率的关键绩效指标(KPI),除测试过程管理以外的服务支持管理(如变更管理,配置管理,发布管理)等。
2.考虑整合A公司的测试团队和其它分布的非全职测试人员,整合各个团队的测试经验和资源,建立独立的软件质量管理和测试中心。
由于不同客户在组织架构,员工素质以及流程管理水平等方面的不同,我们很难用一个实例来说明它的普遍适用性。然而大多数客户完全独立于厂商,独立于技术的软件测试自动化的需求和希望通过软件测试自动化来达到的目的却往往是具有共性的,而这种共性所提供给其它企业客户的借鉴不是他们采用了那个平台,利用了何种技术,而是实现软件测试自动化的过程本身,以及在这个过程中所体现的具有普遍适应性的软件质量管理和软件测试的最佳实践。
既然我们谈到了软件质量管理和软件测试最佳实践,很显然这些最佳实践本身并不依附于软件测试自动化的,它更多是来自于比如ITIL(IT Infrastructure Library)框架,或来自于一些标准化,如CMM/CMMi中的关于SQA的KPA(Key Performance Area)。
所以,我们说软件测试自动化是一个必然趋势,但对企业来说,它并不意味着是必须马上启动的项目,或者甚至所有企业都必须跟随的唯一道路。
首先,一个企业实施测试自动化,绝对不是拍脑袋说干就能干好的,它不仅涉及测试工作本身流程上、组织结构上的调整与改进,甚至也包括需求、设计、开发、维护及配置管理等其他方面的配合。如果对这些必要的因素没有考虑周全的化,必然在实施过程中会处处碰壁,既定的实施方案也无法开展。其次,尽管自动化测试可以降低人工测试的工作量,但并不能完全取代手工测试。100%的自动化测试只是一个理想目标,根据笔者的经验即便一些如SAP, Oracle ERP等测试库规划十分完善的套件,其测试自动化率也不会超过70%。所以一味追求测试自动化只会给企业带来运作成本的急剧上升。再次,比较测试自动化需要企业有相对规模的投入,对企业运作来说,投入回报率将是决定是否实施软件测试自动化的最终指挥棒,笔者建议企业在决定实施软件测试自动化之前,必须要求量化的投资回报分析。此外,软件测试自动化并不就是采购强大的自动化软件测试工具或自动化管理平台,毕竟软件质量的保证不是依靠产品或技术(Technology),而且更多的因素在与高素质的人员(People)和合理有效的流程(Process)。
文章来源于领测软件测试网 https://www.ltesting.net/