• 15
  • 15
分享
  • 软件自动化测试——软件测试圈
  • 恬恬圈 2021-11-19 11:01:27 字数 2048 阅读 1125 收藏 15

什么是自动化测试?

自动化测试或测试自动化是一种软件测试技术,它使用自动化测试工具来执行测试用例套件。相反,手工测试是由坐在计算机前的人员仔细执行测试步骤来执行的。

自动化测试软件还可以将测试数据输入被测系统,比较预期结果和实际结果,并生成详细的测试报告。软件测试自动化需要大量的金钱和资源投资。

连续的开发周期将需要重复执行相同的测试套件。使用测试自动化工具,可以记录该测试套件并根据需要重复执行。一旦测试套件自动化,就无需人工干预。这提高了测试自动化的投资回报率。自动化的目标是减少手动运行的测试用例的次数,而不是完全消除手动测试。

为什么要进行自动化测试?

  • 自动化测试是提高软件测试的有效性、测试范围和执行速度的最佳方法。由于以下原因,自动化测试非常重要:

  • 手动测试所有工作流、所有阶段都需要花费时间和金钱

  • 手动测试多语言站点很困难

  • 软件测试中的自动化测试不需要人工干预

  • 自动化测试可提高测试执行速度

  • 自动化有助于增加测试范围

  • 长时间手工测试可能会变得很无聊,因此容易出错

哪些测试用例可以自动化?

  • 可以使用以下标准选择要自动化的测试用例,以提高自动化的投资回报率

  • 高风险-关键业务测试案例

  • 重复执行的测试用例

  • 非常繁琐或难以手动执行的测试用例

  • 耗时的测试用例

以下类别的测试用例不适合自动化:

  • 新设计的测试用例,并且至少一次不手动执行

  • 需求经常变化的测试用例

  • 临时执行的测试用例

自动化测试流程

自动化过程中遵循以下步骤步骤

  1. 选择测试工具步骤

  2. 定义自动化范围步骤

  3. 规划,设计和开发步骤

  4. 测试执行步骤

  5. 维护

1.jpg

测试工具的选择

测试工具的选择很大程度上取决于被测应用程序所基于的技术。例如Postman不能用于UI自动化,只能适用于接口测试。

定义自动化范围

自动化范围是被测应用程序中将被自动化的区域。以下几点有助于确定范围:

  • 对业务很重要的功能

  • 有大量数据的方案

  • 跨应用程序的通用功能

  • 技术可行性

  • 业务组件的重用程度

  • 测试用例的复杂性

  • 能够使用相同的测试用例进行跨浏览器测试

规划,设计和开发

在此阶段,您将创建一个自动化策略和计划,其中包含以下详细信息:

  • 选择自动化工具

  • 框架设计及其功能

  • 自动化项目

  • 自动化测试环境准备

  • 脚本和执行的时间表

  • 自动化测试的交付物

测试执行

在此阶段执行自动化脚本需要输入测试数据才能运行。一旦执行,他们将提供详细的测试报告。

可以直接使用自动化工具执行执行,也可以通过将调用自动化工具的测试管理工具执行执行。

示例:质量中心是测试管理工具,它将依次调用QTP来执行自动化脚本。脚本可以在一台机器或一组机器中执行,可以在夜间执行,以节省时间。

自动化测试维护方法

自动化测试维护方法是一个自动化测试阶段,用于测试添加到软件中的新功能是否正常运行。当添加新的自动化脚本并需要对其进行检查和维护时,将执行自动化测试中的维护,以提高每个后续发布周期中自动化脚本的有效性。

自动化框架

框架是一套自动化准则,可帮助

  • 保持测试的一致性

  • 改善测试结构

  • 最少使用代码

  • 减少代码维护

  • 提高可重用性

  • 非技术测试人员可以参与代码

  • 可以减少使用该工具的培训时间

  • 适当时涉及数据

自动化测试中常用的四种框架:

  • 数据驱动的自动化框架

  • 关键字驱动的自动化框架

  • 模块化自动化框架

  • 混合自动化框架

自动化工具最佳实践

为了获得最大的自动化投资回报,请注意以下几点

  • 在项目开始之前,需要详细确定自动化范围,这为自动化设定了期望。

  • 选择正确的自动化工具:一定不能根据工具的流行程度来选择它,但是它符合自动化要求。

  • 选择合适的框架

  • 脚本标准-编写自动化脚本时必须遵循标准。他们之中有一些是-

  1. 创建统一的脚本,注释和代码缩进

  2. 适当的异常处理-系统故障或应用程序异常行为时如何处理错误。

  3. 用户定义的消息应进行编码或标准化,以供测试人员理解错误记录。

  • 衡量指标-不能通过将手动工作与自动化工作进行比较,也可以通过捕获以下指标来确定自动化是否成功。

  1. 发现缺陷的百分比

  2. 每个发布周期进行自动化测试所需的时间

  3. 释放时间最短

  4. 顾客满意度指数

  5. 生产率提高

如果遵守上述准则,则可以极大地帮助你成功实现自动化。

自动化测试的好处

2.png

以下是测试自动化的好处:

  • 比手动测试快70%

  • 应用功能的测试范围更广

  • 结果可靠

  • 确保一致性节

  • 省时间和成本

  • 提高准确性

  • 执行时不需要人工干预

  • 提高效率

  • 执行测试的速度更快

  • 可重复使用的测试脚本

  • 通过自动化可以实现更多的执行周期

  • 产品提前上市

如何选择自动化工具?

选择正确的工具可能是一项艰巨的任务。遵循以下标准将帮助您选择最适合你需求的工具:

  • 环境支持

  • 易上手

  • 数据库测试

  • 对象识别

  • 图像测试

  • 缺陷修复测试

  • 对象映射

  • 使用的脚本语言

  • 支持各种类型的测试-包括功能,测试管理,移动等。

  • 支持多种测试框架

  • 易于调试自动化软件脚本

  • 能够在任何环境下识别事物

  • 可扩展测试报告和结果

  • 最大限度地减少所选工具的培训成本

综述

  1. 自动化测试是一种软件测试技术,它使用特殊的自动化测试软件工具来执行测试用例套件。

  2. 自动化测试是提高软件测试的有效性,测试范围和执行速度的最佳方法。

  3. 测试工具的选择很大程度上取决于被测应用程序所基于的技术。


作者:质量保障

原文链接:https://zhuanlan.zhihu.com/p/353489122

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   今天给大家推荐一款基于Python的网页自动化工具:DrissionPage。这款工具既能控制浏览器,也能收发数据包,甚至能把两者合而为一,简单来说:集合了WEB浏览器自动化的便利性和 requests 的高效率。  一、DrissionPage产生背景  实现网页自动化,会有两类形式: - 直接向服务器发送请求数据包,获取需要的数据 - 模拟真实用户操作行为,控制浏览器跟网页进行交互  前者轻量级,速度快,例如requests 库。但requests面对需要登录的网站时,往往还要应付验证码、JS 混淆、签名参数等反爬手段,门槛较高。若数据是由 JS 计算生成的,还须重现计算过程,开发效率...
            0 0 3169
            分享
          •   在日常测试工作中,我们经常会听到“单元测试,集成测试,系统测试”之类的词汇,大家都知道这是按照开发阶段进行测试活动的划分。这种划分完整的分类,其实是分为四种“单元测试,集成测试,系统测试,验收测试"。这四类测试,其实是一种从局部到整体测试思想。但是市面上对这些概念的理解常常很混乱,会和“白盒测试,黑盒测试,灰盒测试”纠缠在一起傻傻分不清,那么本文就针对这几类测试展开讲解,现在车载测试如火如荼,我们就以汽车生产测试的过程为例,来分别阐述下单元测试,集成测试,系统测试,验收测试。  一、单元测试  1、汽车制造举例  在汽车的生产制造过程中肯定是先针对零部件进行测试,比如先对上图的车...
            0 0 1169
            分享
          •   科技媒体 Android Headline 昨日(8 月 1 日)发布博文,分享了 Pixel 9 Pro Fold 折叠手机的宣传视频。  谷歌重点介绍了 Pixel 9 Pro Fold 折叠手机的 8.0 英寸内屏,并展示了使用 Gemini AI 规划出游方案,并排打开 Google Messages 和 Gemini 等等。  可 180 度展开  谷歌初代 Pixel Fold 手机被人诟病的一点是,无法实现 180 度完全展开,谷歌在视频中表示,谷歌 Pixel 9 Pro Fold 手机解决了这个问题,可以完全 180 度展开。  新的铰链  消息源认为谷歌公司和国内欧加集...
            0 0 600
            分享
          • 10月9日消息,字节跳动向员工披露的一份财报显示,字节跳动2021年收入617亿美元(4390.6亿人民币),增长近80%;净亏损增加了87%以上,达到849亿美元(6041.48亿人民币)。从字节跳动员工分享的财务报告来看,该公司2021年经营收入大增近80%,但为了维持业务高速增长,同期支出也大幅增加,导致经营亏损增超两倍,至逾70亿美元。报道指出,字节跳动净亏损主要是由于那些证券的会计处理。一家公司迅速增加营业收入,不断积累了庞大的储备现金及其他投资,但最终结果却被可转换证券方面未实现的市场损失(价值数百亿美元)所拖累。字节跳动在收入增长的同时,支出方面也在增加。2021年,字节跳动销售...
            0 0 1290
            分享
          • 在项目测试中,第一轮基本功能测试完成,第二轮交互功能测试完成,到了第三轮,就需要进行一些压力测试,性能测试等请求量比较大的场景测试,但是大家都很容易忽略一种测试方向,即异常测试。异常测试顾名思义,是手动制造一些异常条件,以此来模拟用户使用过程中碰到的一些突发情况。这些问题在短期使用可能不会遇到,但是随着软件使用时间越来越长,会有可能暴露,所以需要提前测试。设计异常测试用例时,需要关注哪些方向呢?我这边简单整理了一下:异常场景测试重点:1、关注异常情况下,终端界面提示信息合理性;2、关注异常场景下,是否出现脏数据;3、关注异常场景下,界面有合理错误提示,不会出现程序崩溃及异常;4、关注异常恢复后...
            1 1 14427
            分享
      • 51testing软件测试圈微信