详细自动化测试介绍

news2025/1/14 20:39:08
  • 📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢交流讨论:欢迎加入我们一起学习!
  • 📢资源分享:耗时200+小时精选的「软件测试」资料包
  • 📢 最困难的时候,也就是我们离成功不远的时候!

目录

    • 一、自动化测试概念
    • 二、自动化测试优势
    • 三、常见问题
    • 四、自动化测试分类
    • 五、自动化测试流程
    • 六、测试工具概览
    • 最后

一、自动化测试概念

自动化测试是指一切把人为驱动的测试行为转换成机器程序去驱动测试的过程,小到可以通过脚本生成一些测试数据,大到根据测试用例生成测试脚本并驱动测试行为。

二、自动化测试优势

自动化测试在提升软件测试团队效率方面有很多优势

1.快速的进行回归测试

2.快速反馈测试结果

3.可以支持几乎无限制的测试用例迭代执行

4.可以有效的支持敏捷、极限编程思想

5.自定义的缺陷报告

6.解决手工测试无法完成的工作(性能测试-高并发的测试,需要模拟大量的虚拟用户来进行测试,单元测试)

三、常见问题

1.需要什么样的自动化测试?

2.什么样的系统适合自动化测试

3.改选择什么样的测试工具较为合适?

4.自动化测试覆盖程度如何?

四、自动化测试分类

按照测试目的分为:功能自动化,性能自动化

按照测试对象分为:Web应用测试,APP测试,接口测试,单元测试等。

功能自动化:

测试目的是发现软件中实现功能是否符合需求规格,比较大的误区是很多人以为是针对用户界面功能是否满足需求来进行测试的,其实不然,功能自动化的测试入口点有很多,不能讲思维局限于用户界面,而是应该放在软件系统的各个组成部分。

实践证明,基于系统UI的自动化测试只能发现软件中极少的缺陷,往往实施UI自动化测试的目的不是去发现软件系统中的缺陷,更多是为了验证系统是否可以正常运行。

除了可以基于UI进行自动化测试,还可以基于网络服务接口提供者进行测试,比如Grpc服务,Webservice接口,Restful等,基于接口进行功能测试较为常见,也是非常有效的手段。

另外还可以基于系统基础代码进行测试,比如单元测试,集成测试阶段,这一阶段的测试也称白盒测试,我们可以直接对DAO、Service服务进行测试,这里常用的测试技术包括Junit,TestNG,Mock,Stub等

性能自动化:

性能自动化测试是通过测试工具模拟高并发负载进行压力测试,以发现软件系统在高负载情况下运行瓶颈,这里系统瓶颈包含多个部分,应用程序本身的性能瓶颈、网络瓶颈,服务器硬件资源瓶颈(CPU,MEM,DISK),数据存储服务器等,这一测试活动通常唯有借助自动化测试工具来完成,常见的性能测试工具有Loadrunner,Jmeter,Mgrinder,Gatling等,不管哪一款测试工具,基本有三大部分组成:测试脚本管理,测试场景配置,监控结果。

与功能自动化类似的是,性能测试工作对象也可以面向用户UI层,或者服务接口提供方,甚至可以直接面向底层基础业务逻辑层,绝大多数通过用户层进行性能测试模拟的是最接近真实用户场景的测试,也是性能测试必然实施的阶段,另外面向接口的性能测试也是发现系统性能瓶颈很有效的阶段,应当结合实际工作需求有选择性的开展。

五、自动化测试流程

1.制定测试计划

在开展自动化测试之前,最好有个测试计划,明确测试对象,测试目的,测试的项目内容,测试的方法,测试的进度要求,并确保测试所需的人力、硬件、数据等资源都准备充分。制定好测试计划后,下发给用例设计者。

2.分析测试需求

用例设计者根据测试计划和需求说明书,分析测试需求,设计测试需求树,以便用例设计时能够覆盖所有的需求点,一般来讲,基于Web功能测试需要覆盖以下几个方面:

1)页面链接测试,确保各个链接正常

2)页面空间测试,确保各个控件可靠

3)页面功能测试,确保各项操作正常

4)数据处理测试,确保数据显示准确、处理精度可靠

5)模块业务逻辑测试、确保各个业务流程畅通

3.设计测试用例

通过分析测试需求,设计出能否覆盖所有需求点的测试用例,形成专门的测试文档,由于不是所有的测试用例都能用自动化来执行,所以需要将能够执行自动化测试的用例汇总成自动化测试用例。必要时,要将登录系统的用户、密码、产品、客户等参数信息独立出来形成测试数据,便于脚本开发。

4.搭建测试环境

自动化测试人员在用例设计工作开展的同时即可着手搭建测试环境,因为自动化测试的脚本编写需要录制页面控件,添加对象。测试环境的搭建,包括被测试系统的部署、测试硬件的调用、测试工具的安装盒设置、网络环境的布置等。

5.编写测试脚本

根据自动化测试用例和问题的难易程度,采取适当的脚本开发方法编写测试脚本,一般先通过录制的方式获取测试所需要的页面控件,然后再用结构化语句控制脚本的执行,插入检查点和异常判定反馈语句,将公共普遍的功能独立成共享脚本,必要时对数据进行初始化。当然还可以用其他高级功能编辑脚本,脚本编写好了之后,需要反复执行,不断调试,直到运行正常位置。脚本的编写和运行要符合管理规范,以便同一管理和维护。

6.分析测试结果,记录测试问题

应该及时分析自动化测试结果。如果采用开源自动化测试工具,建议对其进行二次开发,以便与测试部门选定的缺陷管理工具紧密结合。理想情况下,自动化测试案例运行失败后,自动化测试平台就会自动上报一个缺陷,测试人员只需每天抽出一定的时间,确认这些自动上报的缺陷,是否是真实的系统缺陷。如果是系统缺陷就交给开发人员修复,如果不是系统缺陷,就检查自动化测试脚本或者测试环境。

六、测试工具概览

性能测试工具:

Loadrunner、Jmeter、Ngrinder,Gatling,每款测试工具都存在一定的差异及其局限性

功能测试工具:Selenium,QTP

APP自动化测试工具:

Appium,UI,Automator,MnkeyRunner,Android UI测试推荐使用UI Automator,是Android提供的自动化测试框架,基本上支持所有的Android时间操作,IOS应用程序可以选择使用Appium

Junit,TestNG,OKhttp,HttpClient,Spring Restful等,需要有一定的编码经验,当然也有现成的工具,比如Postman,HttppRequester,SoupUI等。

单元测试工具:Junit,TestNG,EasyMock,Mockito,JMockit等


最后

如果你想学习自动化测试,那么下面这套视频应该会帮到你很多

如何逼自己1个月学完自动化测试,学完即就业,小白也能信手拈来,拿走不谢,允许白嫖....

最后我这里给你们分享一下我所积累和整理的一些文档和学习资料,有需要直接领取就可以了!


以上内容,对于软件测试的朋友来说应该是最全面最完整的备战仓库了,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你。

​​

​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1216385.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【10套模拟】【5】

关键字: 数据的最小单位、归并排序(两两归并)、单链表顺序存取、邻接表表头顶点顺序存储随机访问、三角矩阵元素个数、堆的性质、冒泡排序、二叉树是否相同

我对需求分析的理解

一、背景 最近做了一个项目,也算是踩坑过程,产品上线了,用户不怎么买单,使用者聊聊无几,前期一直不清楚为什么会这样,诚然新系统的开发设计上采用了更新的技术,设计上采用了更好的理念&#xf…

知识梳理到了领域榜一,意外,开心。

我的护城河 就是掌握的不断更新的技术。 一直被认可的能力。 完美的项目交付。 写的文章得到了读者们的认可。 希望我做的努力被更多的人看到。 分享的代码片可以解决他人的问题。 很惊喜,今早我的文章被数据结构和算法领域内容榜排到了第一名。 被认可的感觉很棒。…

Python-pptx教程之二操作已有PPT模板文件

文章目录 简单的案例找到要修改的元素修改幻灯片中的文本代码使用示例 修改幻灯片的图片代码使用示例 删除幻灯片代码使用示例 获取PPT中所有的文本内容获取PPT中所有的图片总结 在上一篇中我们已经学会了如何从零开始生成PPT文件,从零开始生成较为复杂的PPT是非常消…

【重点文章】服务升级惨痛教训

文章目录 事故解析:避免方法涉及知识 以前怎么接触过大表,所以alter操作我都是一次性执行好几条的,这几条一下子干过去了   结果就是一直在转圈执行,因为alter产生的是表级排它锁,所以有关这几个表的查询更新操作全部处于阻塞…

04-学成在线之系统管理服务模块之查询数据字典表中的内容,前后端联调测试

前后端联调 配置前端环境 实际开发中先由后端工程师将接口设计好并编写接口文档并交给前端工程师,前后端的工程师就开始并行开发 前端开发人员先自己mock数据即使用假数据进行开发,当后端代码完成后前端工程师尝试请求后端接口获取数据然后渲染到页面 第一步: 首…

大力说企微第一课:企业微信的注册验证和认证

这段时间有好几个朋友问我,怎么用企业微信,还有一些朋友反馈,企业微信使用起来不太方便。 在我的印象中,企业微信确实不如微信那么简单,毕竟用户对象是企业,是企业就有多个部门,就有流程&#x…

ubuntu20源码编译搭建SRS流媒体服务器

第一、下载源码 下载源码,推荐用Ubuntu20: git clone -b develop https://gitee.com/ossrs/srs.git第二、编译 2.1、切换到srs/trunk目录: cd srs/trunk2.2、执行configure脚本 ./configure2.3、执行make命令 make2.4、修改conf/rtmp.c…

零代码实现问卷网与巨量引擎的对接

通过数环通,您可以使用不到几分钟的时间即可实现问卷网与巨量引擎的对接与集成,从而高效实现工作流程自动化,降本增效! 1.产品介绍 巨量引擎是字节跳动旗下的营销服务品牌,它整合了字节跳动旗下的产品及海量内容&…

简单高效的定制移动固态硬盘,稳定易用的办公小助手

我在平时的工作中,常常需要处理各种大文件和数据,如果硬盘速度跟不上,那工作效率就会大幅降低。今年固态硬盘的价格大幅下降,有很多国产品牌加入其中,很容易找到一款性价比高的固态硬盘,搭配硬盘盒使用&…

mac清除所有数据,不抹除的情况下如何实现?

mac清除所有数据是一个比较复杂的任务,尤其是在不进行系统抹除的情况下。但是,如果你想要将mac完全恢复到出厂设置的状态,同时保留数据,本文将介绍一些可行的方法,帮助您在不抹除硬盘数据的情况下,让mac清除…

Ganache结合内网穿透实现远程不同局域网公网访问

文章目录 前言1. 安装Ganache2. 安装cpolar3. 创建公网地址4. 公网访问连接5. 固定公网地址 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站…

Zookeeper Java 开发,自定义分布式锁示例

文章目录 一、概述二、导入依赖包三、创建锁的过程3.1 通过 create 创建节点信息3.2 AsyncCallback.StringCallback 回调函数3.3 AsyncCallback.Children2Callback 的回调函数3.4 Watcher 的回调函数 四、完整示例4.1 完整分布式锁代码4.2 测试类 如果您还没有安装Zookeeper请看…

Shopee选品工具软件——知虾,助您轻松把握市场趋势

在如今竞争激烈的电商市场中,了解市场趋势和数据分析是成功的关键。对于Shopee虾皮平台上的商家来说,知虾是一款强大的选品工具软件,它提供了全面的数据分析服务,帮助商家快速了解大盘走势,并挖掘潜力行业类目。本文将…

[msg_msg] corCTF2021 -- fire_of_salvation

前言 msg_msg 是 kernel pwn 中经常用作堆喷的结构体. 其包含一个 0x30 大小的 header. 但 msg_msg 的威力远不如此, 利用 msg_msg 配合其他堆漏洞可以实现任意地址读写的功能. 程序分析 本题给了源码, 可以直接对着源码看. 并且题目给了编译配置文件, 所以可以直接编译一个…

C 语言指针和数组

C 语言指针和数组 在本教程中,您将了解C语言编程中数组与指针之间的关系。您还将学习使用指针访问数组元素。 在了解数组与指针之间的关系之前,请确保检查以下两个主体: [C 数组](C 语言数组-CSDN博客)[C 指针](C 语言指针-CSDN博客) 数组…

2023上海国际电力电工展盛大举行 规模创新高 与行业「升级、转型、融合」

由中国电力企业联合会、国家电网主办及雅式展览服务有限公司承办的「第三十一届上海国际电力设备及技术展览会 (EP Shanghai 2023)」从11月15日起至17日一连三天于上海新国际博览中心盛大举行,并首度增设专题子展「上海国际储能技术应用展览会」。本届展会以“升级、…

2023_“数维杯”问题B:棉秸秆热解的催化反应-详细解析含代码

题目翻译: 随着全球对可再生能源需求的不断增加,生物质能作为一种成熟的可再生能源得到了广泛的关注。棉花秸秆作为一种农业废弃物,因其丰富的纤维素、木质素等生物质成分而被视为重要的生物质资源。虽然棉花秸秆的热解可以产生各种形式的可…

jffs2文件系统(二)

本篇文章讲解一下如何制作jffs2文件系统,以及如何在linux下把jffs2作为根文件系统使用。 文件系统制作 制作工具:mtd_utils,可以自己安装 mkfs.jffs2 -o root-uclibc-jffs2 -r root-uclibc -e 0x10000 -s 0x1000 -n -l -X zlib --pad0x10000…

基于卷积神经网络的猫种类的识别

1.介绍 图像分类是计算机视觉中的一个关键任务,而猫种类识别作为一个有趣且实用的应用场景,通过卷积神经网络(CNN)的模型能够识别猫的不同品种。在这篇博客中,将详细介绍如何利用深度学习技术构建模型,从而…