自动化测试的主要分类

在敏捷开发流程中,自动化测试涉及到下面重要四种类型的测试。

  • 单元测试(Unit Test, UT)

关注某一个函数,模块的正确性,一般需要开发人员编写相关的测试代码来进行自动化测试。

可以使用对应的测试驱动开发(TDD)框架,如:Java的JUnit和TestNG等,相应的python语言中有unittestnose等测试工具。

  • 集成测试(Integration Test, IT)

集成测试,也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求组装成为子系统或系统,进行集成测试。实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现。

这个阶段,可以尝试接口的自动化测试,同样可以利用单元测试的框架编写针对API调用的测试代码。
另外也可以利用seleniumappium等测试工具来进行UI相关的测试。

  • 用户验收测试(User Acceptance Test, UAT)

用户验收测试,也叫用户可接受测试,一般在项目流程的最后阶段,这时相关的产品经理、业务人员、用户或测试人员根据测试计划和结果对系统进行 测试和验收,来决定是否接收系统。它是一项确定产品是否能够满足合同或用户所规定需求的测试。

本阶段主要是UI相关的测试,编写自动化测试脚本的难度比较大。
同样是利用seleniumappium等测试工具来编写测试脚本

  • 回归测试(Regression Test)

回归测试是软件测试的一种,旨在检验软件原有功能在修改后是否保持完整。回归测试主要是以检查退化为目的的测试。
退化主要指由于系统的版本更新,在之前的版本中正常运行的功能变得无法正常运行,或者紧急修正了某个问题,但引发了其他的问题的现象。

从开发人员视角出发的单元测试是需要进行回归的,
还有从用户视角出发的集成测试和用户验收测试的测试用例集也是回归测试的相关内容。

参考文献:

《高效团队开发工具与方法》 池田尚史,藤仓和明,井上史彰 著

博为峰网校助力求职季,特别推出测试集训营,更多自动化测试好课打折、送券……惊喜不停歇,快来~
活动链接:http://h.atstudy.com/activity/

时间: 2024-10-11 16:00:41

自动化测试的主要分类的相关文章

自动化测试流程与分类

  自动化测试流程与分类 测试流程 需求分析: 当给你一个需求或者一个系统让你去做自动化的时候你什么都不知道你就去做自动化能行吗?你不去分析系统的哪些模块儿适合做自动化哪些不适合 ? 如果盲目的去做,当你做到后面的时候可能你框架还没弄好需求或者系统又变了,那你是否做了无用功?所以我们第一步一定是确定需求或者系统哪些模块适合做自动化,而且一定要明白这个需求或者系统做自动化给我们带来的好处是什么,而不是说为了自动化而做自动化. 方案选择: 有的人可能对选择方案会比较陌生,不知道这个到底是干什么的?那

自动化测试入门、分类及工具使用说明

一开始接触编程的时候,还是感觉自动化测试在运维测试界,应该是高大上的东西了.那么自动化测试到底都有哪些常用的工具呢,它们到底有哪些各自的特色呢,今天和大家一起看看吧,具体里面的工具去搜一下就可以了,找找权威的网站,在这我就不一一追加了.下面是自动化测试分类大概有七种. 对Web UI 的自动化测试程序 对Windows 窗体UI的自动化测试程序 性能测试, 性能测试都需要用到自动化 数据库测试, 比如测试存储过程 接口测试 (这种只能用自动化测) 单元测试 API测试, 比如(测试WCF ser

自动化测试的优缺点思考

1. 自动化测试有什么好处: a) 节省人力,只要代码维护的好,不需要那么多人就可完成测试 b) 节省时间,测试脚本可以晚上或者是周末跑测试脚本 c) 优化资源分配,在运行测试脚本的同时,QA可以做其他事,比如设计新测试用例 d) 方便regression,极大提高效率 e) 增加软件的可信度,测试是机器执行的,排除了手工测试时因人为情绪而发生的随意性或疏忽性,测试结果更可信 f) 能完成手工不易控制的工作,比如采集系统cpu占有率信息,手工计算很复杂,还要进行数据比对,使用脚本更简单,更方便.

自动化测试优缺点思考

1. 自动化测试有什么好处: a) 节省人力,只要代码维护的好,不需要那么多人就可完成测试 b) 节省时间,测试脚本可以晚上或者是周末跑测试脚本 c) 优化资源分配,在运行测试脚本的同时,QA可以做其他事,比如设计新测试用例 d) 方便regression,极大提高效率 e) 增加软件的可信度,测试是机器执行的,排除了手工测试时因人为情绪而发生的随意性或疏忽性,测试结果更可信 f) 能完成手工不易控制的工作,比如采集系统cpu占有率信息,手工计算很复杂,还要进行数据比对,使用脚本更简单,更方便.

04_有监督学习--分类模型--K 近邻(kNN)

有监督学习--分类模型--K 近邻(kNN)0.引入依赖1.数据的加载和预处理2.核心算法实现3.测试4.自动化测试 有监督学习--分类模型--K 近邻(kNN) 0.引入依赖 import numpy as np # 数值计算.矩阵运算.向量运算import pandas as pd # 数值分析.科学计算 # 这里直接引入 sklearn 里的数据集 --> iris 鸢尾花from sklearn.datasets import load_irisfrom sklearn.model_se

诠释自动化概念

之前和很多小伙伴聊天,说到自动化的时候都感觉好像很牛逼的样子,感觉公司里做自动化测试的人都好厉害.面试的时候,不管啥公司,公司不管做不做自动化,哪怕就招一个功能测试工程师,那也得问问你会不会自动化.然后呢想学自动化,又不知道该学些什么,自学了很久,语言也学了,什么这自动化工具QTP.selenium.appium都学了,学完感觉都会,自己做自动化的时候还是两眼一抹黑,不会做.什么鬼? 这篇文章就介绍一下咱们作为一个代码0基础的人怎么学自动化,都要学些什么东西,怎么才能避免走弯路. 1.什么是自动

自动化测试基础:一(测试的分类)

测试的分类 根据项目流程阶段划分 测试"V"模型 单元测试:对程序的单哥子程序或独立功能的代码进行测试 集成测试:在单元测试的基础上,通过单元模块组装成系统或子系统进行测试,重点检查模块间的接口是否正确 系统测试:对整个产品系统进行的测试,验证系统的正确性和性能等是否满足需求 验收测试:部署软件之前的最后一个测试阶段,确保软件准备就绪,向客户展示该软件满足客户需求 白盒.黑盒.灰盒测试 白盒与黑盒,主要根据测试中对软件代码的可见程度进行划分 白盒测试: 打开盒子,研究内部源代码与执行结

GitHub上史上最全的Android开源项目分类汇总

今天在看博客的时候,无意中发现了@Trinea在GitHub上的一个项目Android开源项目分类汇总,由于类容太多了,我没有一个个完整地看完,但是里面介绍的开源项目都非常有参考价值,包括很炫的界面特效设计.个性化控件.工具库.优秀的Android开源项目.开发测试工具.优秀个人和团体等.可以这样说,每一位Andorid开发人员都能从中找到一个或多个适用自己项目的解决方案,消化吸收并加以利用,可以为自己的APP增色不少.文章最后还列出了部分国外著名Android开发者的信息,包括GitHub地址

软件测试分类总结

在这之前,如果你问我,软件测试的分类有哪些,我可能会回答的语无伦次.最近温习了一下软件测试分类的知识,觉得有必要总结一下.        从不同的角度可以将软件测试分为六种分类方式:项目流程阶段划分.源代码可见程度划分.软件测试点划分.软件测试工作自动化程度划分.是否运行程序划分.其他测试. 1.根据项目流程阶段划分为:单元测试.集成测试.系统测试.验收测试        单元测试:单元测试是测试过程中的最小粒度,是对程序中的单个子程序或具有独立功能的代码段进行测试,包含入口和出口的参数,输入和