测试理论基础

46 阅读4分钟

测试的能力

具备对任意软件的功能进行质量验证的能力

1.分析需求:功能与非功能

2.测试设计:设计方法

3.缺陷管理:提交与跟踪

4.测试报告:结果总结

注意点

系统测试应尽可能在实际运行使用环境下进行

软件

控制计算机硬件工作的工具。

软件基本组成

客户端请求→服务器处理→数据库读写→响应返回

图片.png

软件产生过程

图片.png

什么是软件测试

使用技术手段验证软件是否满足用户需求

软件测试的目的

1.减少软件缺陷(bug),保障软件质量

2.降低软件产品的潜在风险

软件测试能力

1.功能测试(重要)

通过手工方式验证程序的功能是否满足需求

2.自动化测试

使用代码或工具代替手工,对项目进行功能测试

3.接口测试(重要)

使用代码或工具验证程序中的接口(服务器)是否访问正常

4.性能测试

模拟多人使用软件,查找服务器缺陷

测试阶段划分

1.按照阶段划分

单元测试:针对程序源代码的测试【开发】

集成测试:针对功能模块组装的测试【测试】

系统测试:针对整个系统(功能、非功能)进行测试【测试】

验收测试:以用户身份验证系统是否满足需求【用户】

2.按代码可见度划分

1.黑盒测试:针对有UI界面软件系统输入输出类测试 (看不到部分源代码)

2.灰盒测试:针对无UI界面软件系统输入输出和内部逻辑结构的测试 (能看到部分源代码)

3.白盒测试:针对程序源代码及内部逻辑本身进行测试

3.其他划分

冒烟测试:保障提测内容具备可测性

回归测试:对已修复功能更新后,对已测内容再次测试

质量模型

衡量(测试)优秀软件质量的维度

功能性: 功能能不能用

性能性: 多人在线是否响应快(多个人,时间,资源)

兼容性: 是否兼容不同网络,操作系统,平台,系统,品牌手机,其他软件等

易用性: 用户体验是否容易使用

安全性: 是否数据安全

可靠性:是否卡顿

移植性:是否容易迁移系统

维护性:出现故障,恢复是否简单

质量模型

测试用例

项目测试流程

1.需求评审

确保各部门需求理解一致

2.测试计划编写

测什么,谁来测,怎么测

3.用例设计

验证项目是否符合需求的操作文档

4.用例执行

项目模块开发完成开始执行用例文档实施测试

5.缺陷管理

对着缺陷进行管理与观察

6.测试报告

实施测试结果文档

什么是用例?

用户使用的案例

什么是测试用例?

为特定目的而设计编写的可执行文档

例如

为什么要写测试用例?

防止漏测(好记性不如烂笔头)

实施测试的标准(口说无凭)

测试人员工作量化的一种体现(做了多少)

测试用例编写格式说明

八要素:

用例编号:项目_模块_编号(英文简称)

用例标题:预期结果(测试点)

模块/项目:所属项目或模块

优先级:表示用例的重要程度或者影响力P0~p4 (P0最高)

前置条件:要执行此条用例,有哪些前置操作,没有可不写(没有它无法进行)

测试步骤:描述操作步骤(怎么做的过程)

测试数据:操作的数据,没有的话可以为空

预期结果:期望达到的结果

如:

如何编写测试用例?

明确测试目的(要验证什么/干什么?)

基于需求覆盖各种可能场景(全面)

按照用例模版编写文档(八要素)