• 0
  • 0
分享
  • web自动化测试理论——软件测试圈
  • 北极 2021-06-03 13:25:53 字数 1440 阅读 1002 收藏 0

用工具代替/辅助人工完成软件测试活动的过程,不能为了自动化而自动化

自动化测试特点

  • 可以对程序的新版本自动执行回归测试

  • 可以执行一些手工测试困难或不可能进行的测试

  • 可以更好地利用资源

  • 测试具有一致性和可重复性

自动化一定要有框架

自动化测试优势

  • 节省时间,提高测试覆盖率和测试精度

  • 减少手工测试人为产生的错误

  • 提供规范化的过程和一致性

自动化测试局限性

  • 手工测试比自动测试发现的故障要多,自动化只能发现约15%的bug

  • 自动化测试不能提高测试的有效性,只能用于提高测试的效率

  • 自动化测试不具有想象力,没人聪明

  • 自动化测试不能取代手工测试

误区:

  • 期望自动化测试发现大量新故障

  • 安全性错觉

  • 自动化测试的维护开销

不适合于自动化测试情景

  • 测试频度很低

  • 软件不稳定

  • 结果很容易通过人验证的测试(人工实施较为高效)

  • 涉及物理硬件设备交互的测试

自动化测试位置

1.jpg

自动化工具分类

测试工具的类型简述
代码分析器监督程序代码复杂度,是否遵循标准等等
覆盖分析器校检哪一部分的代码已经被测试,面向代码语句覆盖、条件覆盖、路径覆盖等等
内存分析器边界检查和漏洞检测等等 indbugs sonar静态分析工具
性能测试工具测试在不同的负载级别之下客户/服务器和WEB应用程序等等
BS测试工具检验链接是否有效,客户和服务器端、 WEB站点的交互是否正常工作
其他工具测试实例管理,文件管理, BUG报告,配置管理工具

自动化测试的内容

  • 测试数据自动生成

  • 自动化输入

  • 测试结果自动比较

  • 测试自动执行

  • 自动化测试用例的管理

  • 在线监控

数据库批量插入数据

自动化脚本技术

  • 线性教本

– 录制、回放 – 辅助使用,不靠谱

  • 结构化脚本

– 含有控制脚本执行的指令,支持顺序、选择和循环

  • 共享脚本

– 可以被多个测试用例使用,脚本之间可以相互调用

  • 数据驱动脚本(程序不变,数据变)

– 数据驱动脚本是将测试输入存储在独立的文件中,脚本中只存放控制信息

  • 关键字驱动脚本(通过数据文件中的文字,映射执行程序中的函数)

– 关键词驱动脚本实际上是较复杂的数据驱动技术的逻辑扩展

自动化测试的类型

  • 单元测试-执行速度最快

  • 接口测试-执行速度较快

  • Ui测试-执行速度最慢

自动化测试需要的条件

  • 软件需求变动不频繁

  • 项目周期足够长

  • 自动化测试脚本可重复使用

  • 有编程和设计能力的测试开发人员

  • 研发团队的支持

在自动化测试过程中总结自动化实践的投入产出比

自动化测试的术语

数据驱动

基于数据驱动的自动化测试框架是指测试驱动引擎从数据源获取测试数据,然后将将数据以参数的形式传递给测试脚本,最后通过执行测试脚本,验证测试结果,并将测试结果输出。一般数据源与测试结果存储在、 Excel文件、Csv文件等。

数据驱动主要优点是

  • 测试脚本与测试数据的分离,

  • 当应用功能变更时,只需要修改该功能部分的脚本;

  • 执行测试用例的人员不需要了解测试脚本的实现,只关注测试数据表与测试报告表。

测试框架

  • 整个或部分系统的可重用设计,表现为一组抽象构件以及构件实例间交互的方法;

  • 可被开发者定制的应用骨架。

关键字驱动

关键字驱动测试是数据驱动测试的一种改进类型,它将测试逻辑按照关键字进行分解,形成数据文件,关键字对应封装的业务逻辑

主要关键字包括三类:被操作对象(Item) 、操作(Operation)和值(value) ,用面向对象形式可将其表现为 Item.Operation(Value)

混合模式:动作跟动作操作的数据跟均程序分离


作者:小小小小人ksh

原文链接:https://blog.csdn.net/kongsuhongbaby/article/details/83217996

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 1、引言我们今天来看看Locust如何自定义客户端测试系统的 ,由于基础内容,在第一章节,已经介绍完。所以本章内容,就是实例展示!!2、实例展示2.1 定义Locust以HTTP为主要目标构建。但是,通过编写触发request_success 和request_failure事件的自定义客户端,可以轻松扩展对任何基于请求/响应的系统进行负载测试。2.2 客户端代码展示我们使用User类XmlRpcUser的示例,来看看XmlRpcUser如何发送请求。老规矩,上代码# -*- coding:utf-8 -*- # @Time  &nb...
            1 1 14198
            分享
          •   一、自动化测试简介  1、什么是自动化测试  软件测试是软件产品开发过程中不可或缺的环节,众所周知,软件测试的分类方法非常多,根据不同的分类,测试可以分为很多种不同的测试方式。如果根据不同的测试点分类,可以将测试分类划分为功能测试、性能测试,这也是我们最常见的的软件测试范畴。而我们的自动化测试,一般意义上来说,是指对功能、性能进行脱离手工的自动化的测试。  对于自动化测试,更广泛的意义,是对界面功能的自动化测试。因此,按照对软件测试的自动化程度,可以分为手工测试、自动化测试。再进一步细分,界面自动化测试,又可根据平台的不同,分为Web自动化测试、移动端自动化测试,而他们的测试工具及框架基本...
            0 0 3362
            分享
          •   质量控制过程确保产品的制造标准得到维持和改进。 质量控制过程使公司能够满足客户的期望,同时确保产品质量的一致水平。 采用这些标准创造了一种公司文化,鼓励所有员工追求高质量的生产标准。 对于希望将数据和分析数字化的质量控制团队来说,低代码和无代码软件可以改变游戏规则。  为什么要实施质量控制?  质量控制的主要目的是在制造过程中寻找任何纠正措施来改进产品。质量控制的一个重要组成部分是建立一个检查系统,概述可接受的产品参数并标准化生产过程。在整个生产线上建立和评估标准,员工在生产线上组装原材料并生产成品。在其开发的不同阶段测试每个产品有助于识别生产问题并快速修复它们。  公司通常会雇用专业人员...
            0 0 470
            分享
          • 1、引言在使用Locust时, 都会想到,那么,有没有一种工具,把浏览器的记录,自动的转换成locust文件呢?那么,又是如何转换的呢?今天,就跟着小鱼一起,看看如何把浏览器记录 自动转换成 Locust文件2、安装及调用2.1 介绍Transformer概括来说就是一个命令行工具 和Python库,用户将web浏览器的记录(HAR files) 转换成Locust负载测试方案(即 “locustfiles”)。用它来重播HAR file(存储浏览器的浏览记录)在Locust的负载测试中。2.2 安装安装方式,同样是 pip 安装transformer 安装pip install&n...
            1 0 4605
            分享
          •   在业务系统逻辑实现中,经常涉及异步执行、异步更新场景的开发和使用。但在性能测试中,经常会出现因为异步逻辑设计不合理引发的不可预知问题,比如在开发验证时一切正常,测试人员在性能测试时偶发报错。  本文从Spring事务、业务逻辑顺序、数据库死锁等方面介绍在项目研发中遇到的几种异常场景供读者学习。  一、事务延迟提交引发的异步执行偶发问题分析和设计思考。  1、场景说明:当前有两个线程A、B,A是生产者,B是消费者,A、B两个线程异步执行,A每次从队列获取n条待处理任务,然后依次处理每条任务,包括业务逻辑处理、远程过程调用、更新数据库、将任务放入消费者队列,B从消费队列获取任务进行处理。  2...
            0 0 319
            分享
      • 51testing软件测试圈微信