软件测试基础知识整理(详细版)收藏这篇足矣

一、认识软件测试

1.1 什么是软件测试?

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

1.2 软件测试的目的

目的:用较少的人力、物力、和财力,找到软件中存在的问题并修复,降低商业风险

二、常见的测试分类

2.1 按测试阶段划分

  • 单元测试(针对程序源代码进行测试)

  • 集成测试(也称接口测试,将多个模块组合在一起进行测试)

  • 系统测试(对整个系统进行测试。包括功能、性能、文档等)

  • 验收测试(对整个系统进行测试。不同的使用群体进行测试。内测:指定特定人员进行测试;公测:普通用户试用)

2.2 按代码可见度划分

  • 黑盒测试:看不见源代码,针对程序的功能界面进行测试。 —— 主要应用于系统测试阶段

  • 灰盒测试:看到部分代码,针对系统的接口进行测试。 —— 主要应用于集成测试阶段

  • 白盒测试:看到所有代码,针对源代码进行测试。 —— 主要应用于单元测试阶段 总结: 黑盒测试==系统测试 灰盒测试==集成测试==接口测试 白盒测试==单元测试

2.3 测试策略

冒烟测试:针对系统最基本的功能进行测试,保证系统基本的功能和流程可用。

  • 作用:当冒烟测试通过后,才能进入正式的测试阶段(单元、集成、系统)

回归测试:开发修改bug后,再次执行测试用例保证bug修复完成。

  • 作用:验证bug是否修改成功

三、软件测试模型

3.1 质量模型

概念:为测试提供不同的视野角度和验证方向

常见的角度和方向:

  • 功能:最基本的功能实现。例如:拍照功能、发信息、打电话功能

  • 性能:功能实现的好/不好。例如:运行时卡/不卡

  • 兼容性:在主流的硬件软件上能否正常运行。例如:不同硬件、不同品牌手机等

  • 易用性:用户使用是否方便。用户的主观感受。例如:老人使用软件字体要大

  • 可靠性:软件是否长时间稳定运行。例如:系统运行不宕机不崩溃

  • 安全:保证软件的用户信息不被非法获取。例如:个人账户的信息、资金等

  • 可维护性:软件更新、升级是否方便。

  • 可移植性:软件是否可以迁移到不同的硬件服务器上来使用

重点: 功能、性能、兼容、易用、安全

3.2 测试模型

  • W模型(双V模型)

软件测试基础知识整理(详细版)收藏这篇足矣_第1张图片

​优点:

  • 既测试文档,也测试代码

  • 尽早的发现bug,修改成本更低

缺点:

  • 操作比较复杂,对于前期需求和设计文档的测试难度比较大

四、案例

1、利用质量模型测试水杯

软件测试基础知识整理(详细版)收藏这篇足矣_第2张图片

​2、利用质量模型测试花瓶

软件测试基础知识整理(详细版)收藏这篇足矣_第3张图片

​3、利用质量模块测试纸杯

软件测试基础知识整理(详细版)收藏这篇足矣_第4张图片

​五、软件测试流程

  1. 需求分析:读懂需求,理解与项目其他成员一致

  2. 计划编写:测什么,谁来测,怎么测

  3. 用例设计:分析需求写出具体的操作案例,供测试执行人员来参考执行

  4. 用例执行:按照测试用例,来进行执行

  5. 缺陷管理:执行用例时,发现问题,就需要提交bug,并跟踪解决

  6. 测试报告:当测试工作全部结束后,对阶段的测试工作进行总结

六、测试用例

6.1 什么是测试用例?

指导测试执行的文档(包含执行时的具体步骤和预期结果)

6.2 测试用例的作用

1. 防止漏测 2. 实施执行的标准

6.3 测试用例的模板

  • 模板包含的元素(总结可能不全,具体元素视公司规定)

  • 以QQ的登录模块为例

  1. 用例编号 唯一性标识一条用例。 格式:项目+模块+编号(项目和模块用英文) eg:QQ_login_001

  2. 用例标题 写清楚用例的测试目的。 格式:预期结果+测试步骤(测试点) eg:登录成功(正确的账号+正确的密码)

  3. 项目/模块 用例测试的项目/模块 eg:登录

  4. 优先级 标识用例的重要程度。 格式:P0-P4。(只有冒烟测试用例可以标记为P0) eg:P0 附录:用例优先级参考分类 *P0:冒烟测试用例,一般为保证软件中最主要、最重要的功能,最基本的流程能正常运行而设计 *P1:次要功能,小功能(成功) *P2:UI、边界、错误的设置(错误) *P3:错误信息、较复杂的场景、不常用的场景

  5. 前置条件 在执行测试用例之前需要做好的准备工作。 有就写,没有可以不写 eg: 1. app 应用正常 2. 网络正常

  6. 测试步骤 在测试过程中具体的操作步骤。 格式:分步骤写1、2、3、4,写明具体的操作 eg: 1. 输入qq号 2. 输入密码 3. 点击登录

  7. 测试数据 操作过程中,如果涉及到输入,则会有数据。 有就写,没有可以不写。 eg: 1. qq号:1441559210 2. 密码:cecn1234

  8. 预期结果 按照需求,执行对应的步骤后,希望看到的结果 eg:登录成功,跳转到个人主页

​6.4 测试用例简单案例

  1. QQ登录

软件测试基础知识整理(详细版)收藏这篇足矣_第5张图片

​微信发朋友圈

软件测试基础知识整理(详细版)收藏这篇足矣_第6张图片

​认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,如果下面这些你用得到的话可以直接拿走:

① 自学必备的完整项目 (包括源码和环境,可以自己安装在本地使用)

② 测试计划模板,测试用例设计模块,功能测试报告模块等(涵盖了测试工作中所有模块)

③ 软件测试经典面试题(笔者根据自己10多年测试经验整理)

④ selenium+Python(Java)自动化测试实战.pdf,(包括了Python以及Java自动化的所有知识点)

⑤ 软件测试(自动化测试)学习路线图(从此自学有了方向不在迷茫)

⑥ 简历模板

你可能感兴趣的:(测试基础,单元测试,软件测试,功能测试,自动化测试)