实施自动化功能测试的解决方案(2)

发表于:2014-10-31来源:uml.org.cn作者:不详点击数: 标签:
提高测试覆盖。自动测试产品支持在所有流行的浏览器,操作系统等上执行测试脚本,用自动化的工具对不断变化的应用和环境做回归测试,要比手工测试

  提高测试覆盖。自动测试产品支持在所有流行的浏览器,操作系统等上执行测试脚本,用自动化的工具对不断变化的应用和环境做回归测试,要比手工测试容易得多。通过整合的数据驱动表单的功能,自动化测试产品允许开发和测试团队执行计算,操作数据集,以及快速创建多种反复的测试,使得扩大测试覆盖范围。使用自动测试工具可以仿效任何混合的事务和任意的用户负载。

  提高测试精确度并提早发现更多错误。自动化测试给开发人员提供了一种再现和记录软件缺陷的非常容易的方法。这将在所有环境,数据集和业务过程等之间确保功能的正确性,同时对开发过程起到加速作用。

  提供规范化的过程。自动化测试鼓励测试团队规范化他们的过程,以得到更高的一致性和更好的文档记录。

  提高测试的重用性。测试一旦脚本化,开发人员可以使用和重用这些脚本,可以将脚本添加到测试套件中,以适应应用的变化。没有必要为每个应用的相同功能而重新创建脚本。

  支持ERP/CRM。现在越来越多的用户使用ERP/CRM解决方案,对端到端的回归测试的需求正变得越来越频繁和越来越重要。

  6.在什么情况下采用自动化测试?

  一般来说,把自动化测试的工作集中在关键的业务过程,复杂应用,以及由这些组成的用例方面(相对于低级别任务,例如系统级的验证)是很有意义的。

  如果一个企业拥有众多每天工作很多小时的软件测试人员,但是产品仍然出现质量和功能问题,那么这家企业肯定能从自动化测试中受益。是否决定实行自动化测试应当充分考虑到投资回报,但是一般情况下,如果一个应用需要多次构造/补丁/修改;需要在大量的硬件或软件配置下进行测试;并且支持众多并发用户等,那么将会是值得采用自动化测试。另外,如果涉及到重复性的工作,例如数据装载和系统配置等,或者应用需要满足特定的服务等级协议(SLA),那么自动化测试当然也会节约成本。

  7.如何确定自动化测试的投资回报?

  任何投资回报都可以从一个简单的计算得出:

  投资回报=投资的净现值/总初始成本

  当采用测试过程的自动化时,成本是切实可见的,但是净现值仍旧包含许多无形的因素。最好的方法就是尽量精确计算直接成本,然后与自动化测试产生的直接和间接的效益进行对比。

  在ROI计算中需要考虑的直接成本包括:

  购买成本:购买自动化测试软件产品的成本。

  硬件成本:功能测试所必需的硬件成本。有代表性的是,功能测试不需要特殊的硬件,只需带有以太网端口的标准台式电脑或者工作站即可。

  劳动力成本:培训职员编写测试用例脚本或进行手工测试的成本因素。确认要包括招聘,雇佣,支付工资,和保留熟练的QA工程师的成本。

  培训成本:依赖于所选择的测试产品,培训使用者精通编写自动测试脚本是值得的。当然,公司可以选择雇用专业的服务公司创建最初的自动化测试。

  当衡量自动化的潜在益处时,考虑隐性效益是很重要的,例如测试人员高涨的士气和对工作的满意度,改进的客户满意度和忠实度,还有因为最终用户使用的可信赖的软件而不断提高的知名度。

  8.如何评估自动化测试软件?

  很多商家提供自动化测试产品。每个解决方案都有自身的优势和劣势,独特的功能,和市场环境。每个企业需求的特殊性决定了最适合的一种选择。然而,任何自动化测试产品都应当包含一些关键的性能

  自动化测试的“Scriptless”表示法:产品应该提供一个可点击的界面,在测试时与应用组件进行访问和交互——而不是呈现出一行行的脚本。测试者应该可以可视化每一步的业务过程,并且直观的观察和编辑测试用例。这将减少测试者在学习上走弯路,并帮助测试团队面对紧迫的最终期限。

  集成的数据表:自动化功能测试的一个关键的好处就是可以使系统快速产生大量数据。还有一个重要的功能就是操作数据集,执行计算,并以最小的代价快速创建数以百计的重复测试和组合。企业应该寻找拥有提供强大计算能力的集成电子数据表单的产品。

  清晰明确的报告:如果测试结果不容易理解或解释,那么即使运行大量测试数据也不会有什么好处。测试产品应当自动的产生并显示所有测试运行方面的报告,并用易读的格式解释结果。报告应当提供的细节包括:应用在什么地方发生了失败和使用了什么样的测试数据;为应用的每一步提供高亮或有差别的屏幕显示;并提供每个检查点通过和失败的详细解释。当然还应当能够在不用修改的情况下,在测试和开发团队之间共享报告。

原文转自:http://www.uml.org.cn/Test/200701105.htm