手工测试和自动化测试一直是不少测试人员争论的焦点。有人对自动化测试趋之若鹜,也有人对手工测试嗤之以鼻。其实,两者的关系并非剑拔弩张、非黑即白,而是唇齿相依、相互包容。

  某研究机构一组调研数据显示,目前测试行业51%人员的测试工作类型为手工功能测试,企业对手工测试人员的需求依旧迫切。尽管一些企业会将是否掌握自动化测试工具技巧作为人才招聘的筛选条件,但因此也会错过的测试人才。原因一是自动化测试一般只是借助工具简化测试执行过程,工具本身能够验证测试输出结果是否符合预期,但并不能告知测试人员软件是否通过测试,采用自动化测试工具执行失败的用例仍需采用手工方式进行分析;原因二是手工测试过程能够积累测试用例设计的宝贵经验,而不局限于自动化方式。一般而言,国外的软件测试人员大多都是手动测试。

  由此看来,自动化测试永远不会取代手工测试。但为何越来越多的手工测试人员开始转向开发或自动化测试?我们不得不深思手工测试正面临的巨大挑战。

  手工测试岂能靠“人品”?

  “手工测试非常靠人品。”某银行测试中心负责人一针见血,可见手工测试的窘境。

  对手工测试而言,测试人员完成测试,记录测试结果,统计执行失败的测试用例,对所得统计数据进行公式化计算并得出结论,形成报表提交,视为一个测试任务的完成。手工测试虽然灵活,但其间涉及大量的文档处理、报表制定和整理工作,十分繁琐。一对测试人员的耐心和工作态度是极大考验;二是测试过程因难以准确描述测试缺陷、复现缺陷,无法度量测试过程工作进度及工作效率;三是手工测试的人为因素使惰性、随意性影响测试标准、降低测试严格性。

  与自动化测试技术的不断成熟精进相比,手工测试可能有零星工具,但却一直缺少系统、有效的支撑工具,帮助手工测试人员摆脱执行效率低、缺陷描述难、测试过程不可控的现状。

  手工测试工具SpinterLite 化干戈为玉帛

  2010年,自动化测试专家惠普软件正式推出了针对手工测试人群的工具——HP Sprinter。作为惠普应用生命周期管理解决方案(ALM 11.0)的一个重要新增核心组件,Sprinter向手工测试人员提供了简洁易操作的用户界面,帮助其直观地捕获并记录测试操作和结果,实现了手工测试繁琐部分——在测试应用程序的字段中输入数据——这一步骤的自动化处理。Sprinter也能够记录手工测试人员探索性测试的操作,并可通过镜像功能允许测试人员同时跨多个提供不同环境的机器重复进行测试。

  在Sprinter功能基础上,惠普软件基于对测试流程地系统梳理,推出了基于任务的手工测试管理工具——SprinterLite,它能基于测试流程中的不同角色,提供统一操作界面,界面设计简洁易操作,在使用过程中无需安装,并且该工具能够支持瘦客户端应用。

  SprinterLite手工测试管理工具的设计源于测试流程的佳实践:从第一步测试组长分配任务,到测试人员使用SprinterLite执行测试操作,提交缺陷,再到开发人员处理缺陷、测试人员使用SprinterLite回归缺陷,终到打开或关闭缺陷。

  手工测试具备一定的风险性和耗时性,但一些特殊应用测试环境中,它又具有不可替代性。SprinterLite的革命性意义在于:SprinterLite除提供给手工测试者便捷的测试执行体验外,还能为测试经理、IT管理者提供整个测试流程可控、可视的统一界面。通过SprinterLite实时收集真实的质量数据,能够为测试经理了解软件质量情况提供支撑。同时,它帮助测试工作者在手工测试与测试流程其他角色间搭建良好沟通平台,对整个项目团队而言,它将彻底改变手工测试工作方法,有效降低应用程序出错风险和返工成本。