此文章中为本人边复习边写下的学习笔记 总复习一遍 软件测试的重点以应对期末考试 内容以ppt当中的为主 按照ppt当中的顺序分别来撰写
资料如下
软件缺陷
什么是缺陷??
广义定义上 泛指计算机硬件或者软件的错误
软件的缺陷指的是:软件中(程序和文档)中 不符合用户需求的问题
缺陷的发现
代码故障:静态存在于软件代码中的缺陷
产生错误:由于故障产生的软件错误中间状态
结果失效:跟预期输出不符合的异常行为
代码故障的定义
普通定义:修改一段代码 能够使至少一个失效测试变为通过
极小化定义:修改一段代码 能够使得至少一个失效测试变为通过,并且通过其他的测试仍为通过
产生缺陷的原因
软件错误:是之人们开发软件过程中发生的过错
一个软件错误会产生一个或者多个故障代码
软件缺陷类型
Ron模型:Ron pattern将软件缺陷分为如下五种类型:
软件未实现需求规格说明书要求的功能
软件出现了需求规格说明书指明不应该出现的错误
软件实现了需求规格说明书中未提到的功能
软件未实现需求规格说明书中虽未明确提到 但应该实现的功能
软件难以使用 用户体验不佳
软件缺陷管理
软件严重程度:缺陷严重程度是指缺陷引起故障对软件产品程度的影响
缺陷类别: 按照不同的标准 软件缺陷可以被分为几种不同的类别
界面缺陷:界面错误,如界面不符合要求
功能缺陷:系统功能失效,无响应,或不符合要求
性能缺陷:系统性能过差,响应慢,无法承受预期压力
安全性缺陷:存在安全隐患的缺陷
数据缺陷:数据导入或者设置不正常
软件缺陷的内容大概有这么些 建议以记忆 背诵为主
软件测试概述
软件测试定义
软件=程序+文档(这个概念很重要)
标准定义:使用人工或自动手段,运行或者测试某个系统的过程,目的在于检验是否满足规定的需求或者弄清楚预期结果与实际结果的差别
大白话就是看软件满不满足想要的实现效果与功能,然后还有现实与想象的差距
测试用例
在实施测试之前设计的一套设计方案,测试环境,测试步骤,测试数据,测试结果
测试用例=测试步骤+输入数据+预期结果
测试用例概述
为特定目标而编制的一组测试输入 执行条件和预期结果 核实程序或软件能否满足某个特定的需求
测试用例是执行的最小实体
测试用例是软件测试质量稳定的一个基本保障
软件测试模型
这里只说了重要的模型
1.瀑布模型
2.V模型
V模型指的是快速应用开发,是软件过程中的一个重要模型,旨在改进软件开发的效率与效果。V模型实际上是瀑布模型的变种,反映了测试活动与分析设计等开发活动的关系,V模型如图所示,从左到右描述了基本的软件开发过程和测试过程。将测试明确分成了不同阶段,也清楚描述了每个测试阶段和开发流程中各个阶段的对应关系。在V模型中测试活动被分成了单元1测试、集成测试、系统测试和验收测试
3.W模型
W模型的优缺点:
优点
缺点
软件测试分类
软件测试按照不同阶段,是否运行,是否查看源代码,分为不同的分类
不同阶段
单元测试
集成测试
系统测试
验收测试
是否运行
静态测试
动态测试
是否查看源代码
白盒测试
黑盒测试
灰盒测试
其他
冒烟测试
随机测试
回归测试
黑盒测试又分为
功能测试
逻辑功能测试
界面测试
按照测试
易用性测试
兼容性测试
性能测试
一般性能测试
负载测试
稳定性测试
压力测试
集成测试&&单元测试
单元测试被称为模块测试,是最小单位测试
单元测试是在开发阶段中进行的最低级别的测试活动
集成测试是在单元测试的基础上将已经通过测试的单元模块按照设计要求组装成系统或子系统,进行的测试
静态测试&&动态测试
动态测试与静态测试的区别 个人理解 就是动态要运行程序 静态测试检查代码
黑盒,白盒,灰盒
黑盒测试 可以理解为把软件看成黑乎乎的盒子,不关心结构,只关心输入输出
只关心功能和结果
白盒测试 把盒子打开,主要研究代码和代码结构,程序架构
灰盒测试 介于黑白盒之间的测试
冒烟测试
对一个新版本进行大规模测试之前,先验证以下这个软件的基本功能是否实现,是否具有可测试性
回归测试
对软件进行新版本的测试时,重复执行上一个版本的测试用例,这样保证了更新软件后,不会引入新的bug
功能&&性能测试
功能测试包括
逻辑功能测试:看看逻辑是否满足要求,看他的整体结果,要求是得到是的结果不能没有出现,要求不能出现的结果一定不能出现
界面测试:对Ui图形界面是否满足用户的要求
易用性测试,从用户的角度考虑,软件是否好用 是否容易使用,是否符合人类的习惯 不反人类
安装测试 是否在其他机器上能够正常安装,是否考虑到不同的安装环境
兼容性测试 不同地方能否兼容
性能测试主要重要的有两个 一个是压力测试 一个是负载测试
压力测试:持续不断给压力,知道系统被压垮为止,测试系统能承受的最大压力
负载测试:让系统在承受压力极限范围内连续运行,测试系统的稳定性
软件测试概述的内容比较杂乱但是比较重要 建议认真记记,有很多重要的概念,不仅是为了考试,工作方面如果接触到了,这些测试分类与方法同样十分重要
黑盒测试
编者的话:本章可以说是这门课最重要的一章 很多题目会出现在这一章 并且大题基本绕不开这一章,一定要将这一章的内容完全掌握,在这篇博客中,只会排版重要的概念,例题将放在另外一篇文章中单独整理,白盒测试部分同样。
黑盒测试概述
定义:只知道系统输入和预期输出,不需要了解程序内部结构和特性的测试方法就被称为黑盒测试
黑盒测试优缺点
优点
与软件如何实现无关,如果发生变化仍然可用(可重用性)
用例设计可以与软件的实现同时进行
测试简单
还可以测试性能安全性等多个特性
测试人员不需要知道内部实现细节
从用户视角测试,容易被接受
对于较大测试单元来说,效率更高
测试人员和编码人员现对独立
缺点
只能找到缺陷,难以查找错误具体原因
没有清晰的需求规格说明书测试用例难以被设计
相比白盒测试,测试用例产生遗漏或冗余可能性更大
测试用例的设计要求
黑盒测试分类
等价类划分法
判定表方法
边界值分析法
因果图法(据说这次不考)
场景法
黑盒测试评价标准
精确
完备
无冗杂
简单
易于调试
黑盒测试详细的例题以及重点单独放在下面地址当中
白盒测试
编者的话:本章同样是 将详细的例题相关内容放置在另一篇文章当中
白盒测试是基于代码实现以及逻辑架构的方法。基于覆盖的测试技术,覆盖全部代码,分支,路径,条件
白盒测试又称为结构测试或者逻辑驱动测试
白盒测试的目的:检测软件程序内部结构,程序书写是否规范,是否按照项目需求规格书说明正常运行
白盒测试的优缺点
优点
针对性强,便于快速定位缺陷
缺陷修复成本低
有助于了解测试的覆盖程度
有助于代码优化和缺陷预防
缺点
对测试人员要求高
测试人员需要具备一定的编程经验
测试工程师需要具备广博的知识面
白盒测试准备成本高 时间长
白盒测试动态方法
逻辑覆盖
基本路径覆盖
Z路径覆盖测试
我是分割线
特别感谢:
在此特别感谢张红军老师与魏庆老师 张老师的ppt很详细,使我复习的时候能够得心应手,魏庆老师教了一学期的软件测试课,在他的指导下我收获了很多的知识
另外 更要感谢我的女朋友山山,没有她的默默支持,我的博客是搭建不起来的
最后 祝同学们期末考试顺利通过!!
本文章由杜明珅整理编排 如有问题 请前往首页联系我