当前位置:网站首页>【软件测试进阶第1步】自动化测试基础知识
【软件测试进阶第1步】自动化测试基础知识
2022-07-06 06:35:00 【测试界的彭于晏】
目录
一、自动化测试的概念
2010 年前后开始成熟的以测试设计为中心的自动化,主要有两个概念:自动化测试执行技术和自动化测试设计技术。
1. 自动化测试执行技术
指执行测试用例或脚本,自动操作被测对象及测试环境中周边设备来完成测试步骤和结果检查,自动判断出测试用例的执行结果的相关技术。
2. 自动化测试设计技术
指通过某些信息(如系统的模型,设计模型,源代码等)由生成算法自动地测试生成测试用例和/或测试脚本的相关技术。
二、自动化测试的优缺点
1. 自动化测试的优点
- 提高测试质量
- 提高测试效率,缩短测试工作时间
- 提高测试覆盖率
- 执行手工测试不易完成的测试任务
- 更好地重视软件缺陷的能力
- 更好地利用资源
- 增进测试人员与开发人员之间的合作伙伴关系
- 能执行测试步骤更长,综合性更强的测试用例
- 更快地反馈软件质量情况
- 提高系统的稳定性和可靠性
2. 自动化测试的缺点
- 产生开发成本
- 需要测试技术团队
- 脚本维护成本高
- 无创造性
- 引入更多的复杂性
- 容易出现偏离原始的测试目标
- 可能引入额外的错误
三、基于模型的测试(MBT)
属于自动化测试设计目前的其中一个方向,另一个方向为基于搜索的测试技术。
1. 基于模型的测试技术
基于模型的测试技术通过模型描述软件的需求和期待的行为,自动地生成测试用例和脚本。基于模型的测试技术通过建立系统的模型,利用模型来描述系统的需求、行为、数据等各个方面的信息,通过计算机算法从模型中自动地生成测试用例和测试脚本。然后通过成熟的自动化测试执行系统来执行生成的测试。从而进一步提高自动化测试的效率。其将原由人工实施的测试用例设计的过程分为测试建模和测试生成两大部分。测试建模仍然需要人工实施,而测试生成则由生成算法来自动完成。
2. 基于模型的测试技术的主要优点
- 测试设计的自动化能改善工作效率和减少人为错误
- 尽早建立测试模型能改善沟通,提早发现需求中的缺陷
- 使得不了解测试设计技术的业务分析人员也能实施测试设计
- 提高测试覆盖,从而改进软件产品的质量
- 缩短测试设计的周期,加速测试活动
3. 基于模型的测试技术的缺点
- 从模型生成测试用例数量可能过多(测试用例爆炸)。所以应仔细控制测试生成和选择合适的算法来避免
- 建模需要一定的投入
- 模型也可能描述错误。模型是人建立的,故此可能包含错误。由此生成的测试用例也会包含错误
- 模型的抽象可能带来理解上的困难。所有的模型都定一定程度的抽象,当抽象的逻辑原则未达成共识时,可能导致评审者无法理解测试模型
4. 基于模型测试技术的常用工具
微软的 Spec Explorer
GraphWalker
Stoat
MBT On Cloud
四、测试工具的选择
市场上的常用自动化测试工具有很多,常见的有 UFT(别名简称:QTP)、Robot Framework、Selenium、Appium
学习资源分享
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走
这些资料,对于想【进阶自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….
边栏推荐
- ECS accessKey key disclosure and utilization
- 如何将flv文件转为mp4文件?一个简单的解决办法
- Making interactive page of "left tree and right table" based on jeecg-boot
- How to translate professional papers and write English abstracts better
- 基于购买行为数据对超市顾客进行市场细分(RFM模型)
- 钓鱼&文件名反转&office远程模板
- 在JEECG-boot代码生成的基础上修改list页面(结合自定义的组件)
- 英语论文翻译成中文字数变化
- Past and present lives of QR code and sorting out six test points
- Introduction and underlying analysis of regular expressions
猜你喜欢
Facebook AI & Oxford proposed a video transformer with "track attention" to perform SOTA in video action recognition tasks
My creation anniversary
Today's summer solstice
翻译生物医学说明书,英译中怎样效果佳
My daily learning records / learning methods
关于新冠疫情,常用的英文单词、语句有哪些?
红蓝对抗之流量加密(Openssl加密传输、MSF流量加密、CS修改profile进行流量加密)
CS通过(CDN+证书)powershell上线详细版
Black cat takes you to learn UFS protocol Chapter 4: detailed explanation of UFS protocol stack
LeetCode - 152 乘积最大子数组
随机推荐
Black cat takes you to learn EMMC Protocol Part 10: EMMC read and write operation details (read & write)
基于JEECG-BOOT制作“左树右表”交互页面
How do programmers remember code and programming language?
[web security] nodejs prototype chain pollution analysis
详解SQL中Groupings Sets 语句的功能和底层实现逻辑
Data type of MySQL
[English] Verb Classification of grammatical reconstruction -- English rabbit learning notes (2)
How to translate professional papers and write English abstracts better
Luogu p2089 roast chicken
Error getting a new connection Cause: org. apache. commons. dbcp. SQLNestedException
Transfert des paramètres de la barre d'adresse de la page de liste basée sur jeecg - boot
Basic knowledge of MySQL
How effective is the Chinese-English translation of international economic and trade contracts
LeetCode - 152 乘积最大子数组
成功解决AttributeError: Can only use .cat accessor with a ‘category‘ dtype
Private cloud disk deployment
What are the characteristics of trademark translation and how to translate it?
CS passed (cdn+ certificate) PowerShell online detailed version
The registration password of day 239/300 is 8~14 alphanumeric and punctuation, and at least 2 checks are included
A 27-year-old without a diploma, wants to work hard on self-study programming, and has the opportunity to become a programmer?