软件测试的分类——按测试阶段分类
测试可以通过 测试所在不同阶段、测试时所采用的手段、测试遵循测试模式、软件的测试类型 进行分类。
按测试阶段分类:
单元测试(各个测试的基础,测试对象:最小可测试单元)
集成测试(测试关注最小可测试单元之间接口和子系统集成)
系统测试(整个系统组装后置于真实运行环境进行全面评估)
验收测试(用户角度对系统进行认可验收)
第一阶段:单元测试
什么是单元测试?(针对代码的测试,其他测试的基础)
对软件中的最小可测试单元进行检查和验证。
单元:人为规定的的最小的可测试块
C语言:函数
java:类
功能软件:功能项(例如:菜单项)
单元测试的原则
1.尽可能保证各个测试用例是相互独立的
2.一般由代码的开发人员来实施,用于检验所开发的代码功能复合自己的设计要求。
单元测试的益处
1.能尽早的发现缺陷(单元测试处于前期阶段,编写单元测试是对需求设计二次确认和理解的过程)
2.有利于重构
3.简化集成(为集成测试奠定基础)
4.文档(单元测试可以很大程度上减少文档存在)
5.用于设计
单元测试的限制
1.不可能覆盖所有执行路径,所以不可能保证捕捉到所有路径的错误
2.每一行代码,一般需要3~5行代码才能完成测试。所以存在投入和产出在一个平衡点。(单元测试投入很大,穷尽测试是不可能的)
单元测试框架
Xunit,:JUnit(for Java)、 nunit(for donet)、 PHPUnit(for PHP)、CppUnit(for C++)
Junit:导入Junit依赖库Junit4
第二阶段:集成测试
是在单元测试的基础上,测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动
主要实施方案
1.Big Bang(一次性测试)大集成,全部组装好
2.自顶向下(逐层)
3.自底向上(从最底层开始)常用、比较好的锁定故障所在位置
4.核心系统集成(先挑选核心)
5.高频集成(持续集成)
集成测试&单元测试
1.测试对象不同 集成测试:模块和子系统为单元(模块间的关系) 单元测试:软件最小单元
2.测试依据不同 集成测试:概要设计 单元测试:软件的详细设计
3.测试的方法不同 集成测试:模块的接口 单元测试:单元内部
第三阶段:系统测试
是将经过集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。(需要做功能测试、性能测试、稳定性测试等)
关注点
关注系统本身的使用
关注系统与其他相关系统间的连通
关注系统在不同使用压力下的表现
关注系统在真实使用环境下的表现
系统测试&集成测试
测试对象
集成测试:由通过了单元测试的各个模块所集成起来的构件
系统测试:除了软件之外,还包括计算机硬件及相关的外围设备、数据采集和传输机构、支持软件、系统操作人员等整个系统
测试时间
集成测试介于单元测试和系统测试之间
系统测试在集成测试之后
测试内容
集成测试:各个单元模块之间的接口
系统测试:整个系统的功能和性能
测试角度
集成测试:偏于技术角度的验证
系统测试:偏于业务角度的验证
第四阶段:验收测试
也称交付测试。针对用户需求、业务流程的正式的测试,确定系统是否满足验收标准,由用户、客户或其他授权机构决定是否接受系统。
细分
用户验收测试(开发方交付之前自己进行的测试)
运行验收测试(运维层面)
合同和规范验收测试(参照约定的规范)
alpha测试(开发者提供的场所,用户进行)
Beta测试(完全脱离开发者,在用户提供环境)
release版本(正式交付版本)
软件测试的分类——按测试阶段分类相关推荐
- 适合离散值分类的多分类模型——softmax回归
适合离散值分类的多分类模型--softmax回归 一.什么是softmax回归? 简单来说softmax回归是用来做多分类任务的模型,是一个单层神经网络.与线性回归模型针对连续值的预测(预测房屋价格. ...
- NAR:UNITE真菌鉴定ITS数据库——处理未分类和并行分类
上方文章标题要求:包括杂志名缩写(一个词的杂志名不缩写,两个及上用实词首字母)和吸引人且有重要信息的语句,中间用中文冒号(:)分隔 注:文中灰色部分(引用格式)为写作说明文字,帮助编辑规范Markdo ...
- NAR:UNITE真菌鉴定ITS数据库——处理未分类和并行分类(数据库文章阅读笔记Markdown模板)...
上方文章标题要求:包括杂志名缩写(一个词的杂志名不缩写,两个及上用实词首字母)和吸引人且有重要信息的语句,中间用中文冒号(:)分隔 注:文中灰色部分(引用格式)为写作说明文字,帮助编辑规范Markdo ...
- NAR:UNITE真菌鉴定ITS数据库——处理未分类和并行分类(数据库文章阅读模板)
上方文章标题要求:包括杂志名缩写(一个词的杂志名不缩写,两个及上用实词首字母)和吸引人且有重要信息的语句,中间用中文冒号(:)分隔 注:文中灰色部分(引用格式)为写作说明文字,帮助编辑规范Markdo ...
- KNN分类器、最近邻分类、KD树、KNN分类的最佳K值、基于半径的最近邻分类器、KNN多分类、KNN多标签分类、KNN多输出分类、KNN分类的优缺点
KNN分类器.最近邻分类.KD树.KNN分类的最佳K值.基于半径的最近邻分类器.KNN多分类.KNN多标签分类.KNN多输出分类.KNN分类的优缺点 目录
- 分类家族:二分类、多分类、多标签分类、多输出分类
分类家族:二分类.多分类.多标签分类.多输出分类 目录 分类家族:二分类.多分类.多标签分类.多输出分类 二分类
- 机器学习 二分类分类阈值_分类指标和阈值介绍
机器学习 二分类分类阈值_分类指标和阈值介绍_weixin_26752765的博客-CSDN博客 机器学习 二分类分类阈值_分类指标和阈值介绍_weixin_26752765的博客-CSDN博客
- 深度学习原理—代码分析线性分类与神经网络分类的区别
https://www.toutiao.com/a6687727778487337476/ 利用sklearn.dataset随机产生数据,随机生成两类数据,用不同的颜色展示出来,如下图: 产生的随机 ...
- 【数据挖掘】K-NN 分类 ( 简介 | 分类概念 | K-NN 分类实例 | K-NN 分类准确度评估 | K-NN 分类结果评价指标 | 准确率 | 召回率 )
文章目录 I . K-NN 简介 II . K-NN 分类 III . K-NN 分类实例 IV . K-NN 分类 准确性评估方法 V . 保持法 VI . kkk-交叉确认法 VII . K-NN ...
最新文章
- sqluldr2支持mysql吗_Oracle SQLULDR2 以及 SQLLDR 进行导入导出的功能说明
- firefox扩展开发(二):用XUL创建窗口控件
- Git的pull clone fetch
- 如何处理班级过多的问题
- ShapeNet:超实时人脸特征点检测与形状拟合开源库
- 概率论中 Var是什么意思?概率论方差概念介绍
- 6、Flink的时间语义和Wartermark
- 信息学奥赛 一本通:1194:移动路线
- c语言日期加减天数,日期计算器
- Java篇,小米java校招面试
- ·禅思·的寓意和思索
- JMeter——》调整界面比例、字体大小
- Java锁--共享锁和ReentrantReadWriteLock
- 宕机三个月、36亿打水漂,印度骄傲Infosys如何活成了全球笑话?
- 如何去除Android5.1状态栏音量下部分
- 2006中国企业500强名单
- 在线计算机一级考试模拟题,计算机一级wpsoffice精选模拟试题及答案.doc
- Python爬虫--智联招聘职位和公司信息爬取
- Python系统模块增强库(xToolkit库)
- java 列表面板_java-用JPanels列表制作表