测试基础——测试分类和测试方法
(4)软件测试分类
按方向:功能测试、性能测试、安全测试
功能测试和单元测试的区别:对象不一样,功能测试的对象是一个完整的业务功能。单元测试的对象是一个代码片段,比如类 、几口。
性能测试:压力测试、负载测试、并发测试
负载测试主要关心用户规则和需求,压力测试关心的是系统本省
并发测试单独提出来,是因为并发测试往往涉及服务器的并发容量,以及多进程/多线程协调同步可能带来的问题
基准测试,当软件系统增加一个新的模块的时候,就要做基准测试,以判断新模块对整个软件系统的性能影响。按照基准测试方法,需要打开/关闭新模块至少一次
稳定性测试,测试系统在一定负载下运行长时间是否会发生问题
按方法:黑河测试、灰盒测试、白盒测试
按状态:静态测试、动态测试
按阶段:单元测试、集成测试、确认测试、系统测试、验收测试
新型开发模式:测试驱动开发
单元测试目的:检测程序模块中有没有故障
单元测试对象:软件设计中的最小单位
什么是单元:一个函数:类或者类内的成员函数;几个函数的集合
单元测试步骤:人工静态检查;动态执行跟踪
集成测试目的:检查接口之间的问题
集成测试的对象:单元之间的接口
集成测试前提:单元测试已经通过
集成测试方法:非渐增式集成测试;渐增式集成测试方法;三明治集成测试方法
A、非渐增式集成测试法,别称大爆炸集成测试法,一次性集成测试法
净式软件工程:开发出接近零缺陷的软件
B,渐增式集成测试法:自顶向下;自底向上(常用)
C,三明治集成测试法:混合增量式集成方法,混合 了自顶向下和自底向上的优点。
把系统划分成三层,中间一层叫做目标层,目标层上面是自定向下,目标层下面是自底向上
集成测试的分类:对于传统软件,按集成粒度不同:模块间集成测试;子系统内集成测试;子系统间集成测试
单元测试和集成测试的区别:测试对象不同、测试方法不同、测试时间不同:单元测试最早吃;测试内容不同:单元测试程序的逻辑、集成测试各个模块的连接。
系统测试:在使用环境下对整个系统进行测试。
系统测试目的:对系统中各个组成部分进行的综合性检验,证明系统性能。
系统测试与功能测试的区别:系统测试还要包括压力测试、容量测试、性能测试等等。
系统测试包含:业务流程测试(功能测试)、UI测试、兼容性测试(浏览器和手机)、稳定性测试、(能运行7*24小时),健壮性测试(容错测试)、争用测试(两个同类型产品运行不冲突)、压力测试(强度测试)、负载测试、并发测试、弱网测试、文档测试、场景交互测试、恢复测试(克服硬件问题)、安全性测试、性能测试、可靠性测试、安装测试、容量测试、
系统安全设计的准则:非法入侵的代价超过了被保护信息的价值
容量测试:测试某个指标的极限值,测试在此极限值下能维持多久
验收测试(交付测试):在产品发布前的测试。根据产品规格说明书,严格的检查产品,查看产品是否符合说明书规定的功能。有用户参与进行测试。
按对象:APP测试、web测试、小程序测试、嵌入式测试等等
其他:人工测试、自动化测试;冒烟测试;回归测试;alpha测试,beta测试
人工测试:人为测试和手动测试;人为测试:桌前审查、代码检查、走查;手动测试:按测试计划手动执行程序
自动化测试:用测试工具进行测试,并分析
冒烟测试:测试前的测试,在测试前的可测试性测试,比如app不可安装
回归测试:修改代码后重新进行测试,存在整个软件的生命周期中,反复进行、
alpha测试:非正式验收测试,内测,内部用户进行测试
beta测试:公测,实际用户参与使用
(5)软件测试方法
A、等价类划分法(黑盒测试):根据说明书对输入数据进行划分,划分成互不相交的子集,在这些子集中取若干个测试用例进行软件的测试。
步骤:1. 分类 2.取样
有效等价类和无效等价类数据
a,输入数据是布尔值
b,输入条件已经规定了取值范围或者个数。有效等价了一个,无效等价类两个
c,输入条件已经规定了输入值的集合,无效等价类一个,集合外
d,输入条件已经规定了多个输入值,并且每个输入值都有对应的处理结果
e,输入条件规定了几个规则,多个有效等价类和多个无效等价类
B,边界值分析法
边界条件/次边界条件(内部边界条件)
对于一个有n个变量的程序,通过边界值分析法会产生4n+1个测试用例
健壮性测试:会产生6n+1个测试用例。有两个超出边界的值。
实际运用
加法计算,计算两个整数之间的和,取值范围:1-100
C,决策表法(判定表法)
利用决策表法能够把测试用例一一列出,不容易遗漏
条件——活动 决策表一列=一条规则=一个测试用例
a,条件桩:列出问题的所有条件
b,动作桩:列出问题规定的可以采取的动作
c,条件项:列出针对条件桩的取值
d,动作项:列出在条件项的各种取值情况下可以采取的动作
步骤:1、列出所有的条件桩和动作桩
2、确定规则个数
3、填入条件项
4、填入动作项
5、简化(合并)
简化:合并相似规则。
实际运用
题目:输入年月日,输出后一天日期
取值范围:2020<=year<=2050,1<=month<=12 1<=day<=31 是整数
1、列出所有的条件桩和动作桩
Y1:是闰年
Y2:不是闰年
M1:30天
M2:31天,12月
M3:12月
M4:2月
D1: 1<=day<=27
D2:day=28
D3:day=29
D4: day=30
D5: day=31
条件桩:
C1:月份在M1,M2,M3,M4之间任意一个
C2:日期在D1,D2,D3,D4,D5,之间任意一个
C3:年在Y1和Y2之间任意一个
动作桩:
A1:是不可能
A2:日期加一
A3:日期重新变成1
A4:月份加一
A5:月份重新变成1
A6:年加一
D,因果图法
因——输入条件;果——输出结果
利用图解法分析软件的输入条件和输出条件之间的关系
关系:输入与输出之间的关系
输入与输入之间的关系、
约束:输入条件约束:输出条件约束
步骤: 分析——关联——转换——输出
实际运用:自动贩售机里面只有可乐和奶茶,只能现金支付,一次只能投入一张纸币,金额只能是5元和10元。可乐5元一瓶,奶茶10元一瓶。
第一步:分析:输入条件,它们之间的制约关系
输入条件:1投入5元纸币;2投入10元纸币;3按可乐按钮;4、按奶茶按钮
输出结果:a.出来可乐;b,出来奶茶;c,错误提示 d。找零(退还)
制约关系:1和2 互斥(E),3和4互斥(E),
因果图
第二步:关联
第三步:转换
E、功能图法
定义:描述程序的状态变化过程
功能图模型:状态迁移图、逻辑功能模型
F 错误推测法(猜错法)
定义:尽可能的列出程序中会出现的错误
G 正交实验设计法(百度百科)
多因素多水平(多输入条件的不同取值)
实例:
因素:操作系统;浏览器
水平(取值):操作系统:Windows系统;Linux系统;Mac系统
浏览器:IE浏览器;谷歌浏览器;火狐浏览器
H 场景法
用于测试业务流程
业务流程:基本流、备选流、异常流程
不能测试单点的流程
I 路径覆盖法
定义、步骤、小例子、优缺点(学习流程)
测试基础——测试分类和测试方法相关推荐
- 测试基础-01-软件测试的定义与分类
1.目标与内容: 1.1软件测试的定义及目的 1.2软件测试分类 2.什么是软件? 2.1软件是计算机程序.程序所用的数据以及有关文档资料的集合 2.2软件是计算机的灵魂.软件又可以分为2大类:系统软 ...
- 测试基础--测试方法
测试方法 软件测试阶段划分 单元测试 单元测试(Unit Testing,简称UT)是对软件基本组成单元(函数或类)进行检测的测试工作.其目的是检测与详细设计说明书(Low Level Design, ...
- API测试基础知识(基本概念、测试方法、测试工具)
目录 什么是API? 什么是API测试 API测试的测试用例: API测试方法: 如何进行API测试 API测试的最佳做法: API测试检测到的错误类型 API测试工具 API测试的挑战 结论: 总结 ...
- 测试基础知识考试题目(答案)
1. 请介绍一下软件测试流程 2. 如何编写测试用例? 3. 如何编写一个缺陷? 4. 请写出一个标准的缺陷跟踪处理过程 5. 研发和测试有什么不可调和的矛盾? 6. 你所熟悉的测试用例设计方法有哪些 ...
- 软件测试 - 测试基础知识
软件测试知识整理 软件测试 使用人工或自动手段,来运行或测试某个系统的过程.其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别. 贾祥玉 软件测试常用术语 1. ...
- 软件质量保证与测试基础知识小计
写在前面: 这是我再期末考试阶段根据老师的重点进行的知识总结(只涉及概念等基础内容,不涉及具体技术操作流程),现分享出来,欢迎大家批评指正. 目录 第一章 概述 第二章 软件质量工程体系 第三章 软件 ...
- 软件测试面试题-测试基础篇
软件测试是什么? 在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,评估软件是否符合用户需求. 软件测试有哪些分类? 1.按测试方法:黑盒测试,灰盒测试,白盒测试 2.按测试方向:功能.性能 ...
- 面试测试开发工程师:Java测试基础篇
目录 1. 什么是软件测试? 2. 测试与调试的区别 3. 软件测试的目的和原则 4. 什么是需求 5. 什么是bug 5.1 如何描述一个bug 5.2 如何定义bug的级别 5.3 bug的生命周 ...
- 软件测试整理一:测试基础知识以及开发、测试模型、按照开发阶段进行测试
文章目录 一.基础概念 1.什么是软件测试 2.软件测试的目的 3.软件测试的原则 4.软件测试的分类 4.1 按照开发阶段分类 4.2 按照软件特性分类 4.3 按照测试技术分类 4.4 按照测试运 ...
最新文章
- 手动配置lnmp环境
- centos 7 安装nfs 服务
- linux命令查看几位,Linux每周几个命令(一)--查找篇
- LeetCode 73矩阵置零74搜素二维矩阵75颜色分类
- 如何使用 ABAP 把多个文件打成一个 zip包 -利用 ABAP 标准工具类 cl_abap_zip
- JAVA实验报告九异常处理_JAVA实验报告_Java异常处理
- 将clover安装到硬盘EFI分区, 解决root device uuid is ...问题
- GIT_服务器与本地环境构建
- 多线程原理分析面试题理解
- mysql+数据库主从原理_MySQL主从复制原理及实现
- Java中Spring面试基础题20190302
- Camera:双目成像原理
- Linux中tar的参数zxf,tar命令
- win7与internet时间同步出错_如何解决Win7时间同步出错的问题
- Simulink高级应用—— Matlab Function中共享或使用全局变量或全局数据
- 2017工业互联网峰会 | 天拓四方助力中国工业生产、制造业转型升级
- 【几种恢复误关Chrome标签页的方法】
- Java异常处理——日志打印
- 弘辽科技:淘宝14天降权会恢复吗?多久能恢复正常?
- 使用GifCam工具上传GIF动态图至CSDN博客