测试基础01

===========================
1.掌握常用的设计测试用例方法及应用常见;
2.使用缺陷管理工具对缺陷进行管理;
3.能够对黑马头条web项目功能进行实战;
===========================
1.理论+数据库+linux
2.理论+工具
3.理论+代码
===========================
功能+接口(12k+15k)
接口+性能(15k)
自动化+接口(15k~22k)
===========================


一、测试基础

1.测试技能:功能测试、接口测试、自动化测试、性能测试

2.测试分类

(1)按阶段划分
单元测试:程序员代码(开发-白盒测试);
集成测试:又称接口测试,主要针对模块和模块或系统和系统之间;
系统测试:针对软件全面进行验证(功能、兼容、文档)
验收测试:使用内测(公司内部测试)、公测(玩家测试)实现
(2)代码可见度划分
黑盒测试:功能测试(完全看不见代码,只针对功能)
灰盒测试:接口测试(看不见部分代码)
白盒测试:单元测试(针对代码进行测试)
【拓展1】
系统测试和黑盒测试:功能测试
集成测试和灰盒测试:接口测试
单元测试和白盒测试:对“代码”进行测试
自动化测试归属于:功能测试
性能测试、安全测试归属于:专项测试

【拓展2】
冒烟测试:对主要功能进行测试,程序具备可测性。
面试题:
      提测标准是什么?{冒烟测试通过}
      测试之前要做什么?{冒烟测试}

3.模型

(1)质量模型:针对任何软件硬件,测试要覆盖的方面;(功能,兼容,性能,易用,安全)
(2)测试模型:W模型(测试在开发流程中处于什么作用)
开发流程:用户需求      、需求分析       、概要设计      、详细设计      、编码       、集成      、实施       、交付
测试流程:验收测试设计、系统测试设计、集成测试设计、单元集成设计、单元测试、集成测试、系统测试、验收测试
优点:测试贯穿整个周期;测试介入较早,及时发现问题,降低修复成本。

4.软件测试流程

分析测试需求:又称需求分析,各部门对需求理解一致;站在测试角度对需求查漏补缺;
制定测试计划:测什么(测试目标及范围),谁来测(人员进度及安排),怎么测(测试策略及工具)【开发测试离职,需求变更】;
设计测试用例:验证项目是否符合需求操作;
执行测试:又称用例执行;
缺陷管理:关注流程(提交->验证->关闭)
编写测试报告:项目经理想看到bug分析(哪个开发bug最多)、测试结果

5.测试用例

(1)用例:用户使用的案例。
例--手机示例
答--是否开机、耗电情况、内存占用、网络配置、使用手感、外观是否美观
总结:从质量模型分析:功能、性能、兼容、易用、安全等。
(2)用例作用:防止漏测;实施测试的标准。
(3)用例格式--九大要素
用例编号、测试标题、测试功能、优先级、预置条件、步骤描述、测试数据、预期结果、实际结果
(4)作业
a.【花瓶设计用例】(10条以上,质量模型角度:功能、性能、兼容、易用、安全等)
功能:装水是否会漏;(插花功能:容纳不同高度、数量和种类的鲜花;储水功能:是否会漏水;稳定放置:花瓶底部设计是否有防滑垫或足够接触面积,日常轻微碰撞不易倾倒)
性能:
兼容:装营养液是否可以/装其他液体、固体是否可以;装其他液体是否有爆炸危险;
易用:(注水方便,清洗便捷,插花辅助:内壁是否有注水线)
安全:平稳的放花瓶观察花瓶是否有爆炸风险;做跌落测试,分别从不同高度跌落;
UI:花瓶外观是否美观,是否符合用户需求;
(想不到了,哈哈哈哈,大家可补充......)

b.【纸杯测试】

测试项目:纸杯
需求测试:查看纸杯说明书是否完整;(需求测试:说明书)
界面测试:观察纸杯外观,例如表面是否光滑;(UI)
功能测试:用纸杯装水,观察是否漏水;(基本功能)
安全测试:纸杯是否有病毒或细菌;(安全)
可靠性测试:从不同高度扔下来,观察纸杯的损坏程度;(。。。。)
易用性测试:用纸杯盛放开水,检查纸杯是否烫手、纸杯是否易滑,是否方便饮用;(方便使用否)
兼容性测试:用纸杯盛放水、酒精、饮料、汽油等,观察是否有渗漏现象;(兼容性:分内和外;内:装什么;外:在不同地方,也是可移植性)
可移植性测试:将纸杯放在温度、湿度不同的环境中,观察纸杯是否能正常使用;(不同环境)
可维护性测试:将纸杯揉捏变形,看其是否能恢复;(坏了,能否修复)
压力测试:用一根针扎在纸杯上,不断增加力量,记录用多大力时能穿透纸杯;(外力)
疲劳测试:用纸杯分别盛放水、汽油,防止24小时,观察渗漏情况(时间和程度);(。。。。)
跌落测试:让纸杯(加包装)从高处落下,记录可使其破损的高度;(跌落)
震动测试:将纸杯(加包装)六面震动,评估它是否能应对恶劣环境下的公路/铁路/航空运输等;(考虑到运输成本)
测试数据:编写具体测试数据(略),其中可能使用到场景法、等价类划分、边界值分析法等测试方法;
期望输出:需要查阅国际标准及用户的使用需求;
用户文档:使用手册是否对纸杯的用法、使用条件、限制条件等进行详细描述;
说明书测试:检查纸杯说明书的正确性、准确性和完整性;
总结:需求测试(是否满足说明书)、界面测试(UI)、功能(基本功能)、安全(是否有细菌/病毒)、“可靠性”、易用性(是否方便使用)、可移植性(不同环境)、可维护性(坏了,是否可维修)、“压力测试”、疲劳测试(极限,做多久会坏,观察时间和程度)、跌落测试(从不同高度跌落,观察损坏程度)、震动测试(可以考虑到运输成本)】

二、设计测试用例方法

1.等价类划分

(1)分类:有效等价类、无效等价类(有效/无效集合各取一个)
(2)步骤:明确需求;确定有效/无效等价类;提取数据编写测试用例;
例子1---qq账号验证
需求:6-10位自然数
有效/无效:有效--8位自然数;无效--四位自然数、8位非自然数
数据:12345678、1234、123abc7d

图2.1  编写用例流程

表2.1  qq账号验证用例

用例编号用例标题项目/模块前置条件优先级测试步骤测试数据预期结果实际结果
qq_001合法(8位自然数)qq登录打开qq程序p01.输入qq号
2.点击验证
12345678合法
qq_002不合法(4位自然数)qq登录打开qq程序p01.输入qq号
2.点击验证
1234不合法
qq_003不合法(8位非自然数)qq登录打开qq程序p01.输入qq号
2.点击验证
123abc7d不合法

例子2--验证某城市电话号码正确性
要求:
区号--空/三位数字;
前缀码--非0且非1开头的三位数字;
后缀码:四位数字

(区号+前缀码+后缀码)
【明确需求】
0+3+4=7
3+3+4=10
【有效】
空(空)+非0开头(234)+四位数字(1234)=2341234
3位(123)+非1开头(345)+四位(1234)=(1233451234)
【无效】
1位+0开头/1开头+非4位

图2.2  编写用例流程

用例编号用例标题项目/模块前置条件优先级测试步骤测试数据预期结果实际结果
tel_001合格(区号为空+前缀码3位数字且非0非1+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:为空
2.前缀:234
3.后缀:4567
合格
tel_002合格(区号3位+前缀码3位数字且非0非1+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:234
2.前缀:234
3.后缀:4567
合格
tel_003不合格(区号1位+前缀码3位数字且非0非1+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:1
2.前缀:234
3.后缀:4567
不合格
tel_004不合格(区号为空+前缀码2位数字且非0非1+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:为空
2.前缀:23
3.后缀:4567
不合格
tel_005不合格(区号为空+前缀码3位数字且非0非1+后缀码3位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:为空
2.前缀:234
3.后缀:456
不合格
tel_006不合格(区号非数字+前缀码3位数字且非0非1+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:abc
2.前缀:234
3.后缀:4567
不合格
tel_007不合格(区号为空+前缀码3位非数字且非0非1+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:为空
2.前缀:abc
3.后缀:4567
不合格
tel_008不合格(区号为空+前缀码3位数字且非0非1+后缀码4位非数字)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:为空
2.前缀:234
3.后缀:abcd
不合格
tel_009不合格(区号为空+前缀码3位数字且0开头非1开头+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:为空
2.前缀:034
3.后缀:4567
不合格
tel_010不合格(区号为空+前缀码3位数字且1开头,非0开头+后缀码4位)电话号码/p01.输入区号
2.输入前缀
3.输入后缀
1.区号:为空
2.前缀:134
3.后缀:4567
不合格

2.边界值分析法

1.对等价类划分的补充
2.上点(边界上的点)、离点(距离上最近的点)、内点(中间的点)
例子---【10~20】
上点:10、20
离点:9、11、19、21
内点:15(12~18都可以选取)
最多7条
3.边界值设计用例步骤
(1)明确需求
(2)确定有效和无效等价类
(3)确定边界范围值
(4)提取数据编写用例测试
4.练习
需求:通过边界值法验证标题长度的合法性
要求:标题长度大于0,小于等于30个字符

图2.3  边界值测试用例

用例编号用例标题项目/模块前置条件优先级测试步骤测试数据预期结果实际结果
title_001合格(1个字符)标题打开工具p01.输入数据;2.点击提交1个a合格 
title_002合格(29个字符)标题打开工具p01.输入数据;2.点击提交29个b合格
title_003合格(30个字符)标题打开工具p01.输入数据;2.点击提交30个a合格
title_004不合格(0个字符)标题打开工具p11.输入数据;2.点击提交不合格
title_005不合格(31个字符)标题打开工具p11.输入数据;2.点击提交31个b

合格

5.优化
结论:7个优化为5个
上点(必选)
内点(必选) 
离点(开内闭外:开区间选择内部为离点,闭区间选择外部离点)

例子--【6<=qq=>10】
上点:6、10
内点:8
离点:5、11

【【【边界类可以覆盖等价类的长度,但是不能覆盖等价类的内容,so边界值不能代替等价类。边界类解决的是(边界范围限制问题)等价类解决的是(穷举场景问题)】】】

3.判定表法

(1)案例:验证“若用户欠费或者关机,则不允许主被叫”功能测试
说明:
等价类边界值分析法主要关注单个输入类条件的测试;
并未考虑到输入条件之间的各种组合,输入条件与输出结果之间有相互制约关系的测试
(2)定义:是一种以表格形式表达多条件逻辑判断的根工具
(3)组成:
条件桩:列出问题中所有条件,列出条件的次序无关紧要
动作桩:列出问题中可能采取的操作,操作的排列顺序没有约束
条件项:列出条件对应的取值,所有可能情况下的真假值
动作项:列出条件项的、各种取值情况下应该采取的动作结果
图3.1

注:
动作项个数=用例个数(4条)
动作项是预期结果
(4)规则:
假设n个条件,每个条件的取值有两个(0,1),全组合有2的n次方种规则。
(5)设计用例步骤
明确需求
画出判定表
   列出条件桩—填写条件项,对条件项进行全组合—根据条件项的组合确定动作项—简化、合并相似规则(有相同的动作)
根据规则编写测试用例

【使用场景】
a.有多个输入条件,多个输出结果,输入条件之间有“组合”关系,输入条件和输出条件之间有依赖(制约)关系
b.判定表一般适用于条件组合数量较少的情况(如4个条件一下,条件过多可使用正交表)

=======================作者有话想说========================

对于学习软件测试这件事情,一直在拖延拖延再拖延,这次真的不能再拖了,大四了,金三银四可能都赶不上了,哎,怪我之前偷懒~

没事,现在开始也不算太晚,加油哦~

如果你是一名大学生,想兼职,想实习,抑或不是大学生,想换工作,别怕!放心大胆的去做吧,我们会变得越来越好的~ 今天总比昨天好!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值