0 阶段目标及路线
0.1 目标
能独立完成软件的功能测试工作。
示例:登录是一个功能,只是其中包含很多信息,如账号密码等。
0.2 学习路线
- 测试基础(软件及测试的相关知识)
- 测试设计(如何进行测试、测试什么)
- 缺陷管理(测试不通过如何处理)
- 项目实战
测试工作:设计测试——>发现缺陷——>生成测试报告
0.3 就业方向
方向一:功能测试+接口测试
方向二:功能测试+性能测试
方向三:功能测试+web自动化测试
1 认识软件及测试
1.1 什么是软件
软件:控制计算机硬件工作的工具。
类型 | 示例 |
---|---|
系统软件 | Windows、Linux、macOS等 |
应用软件 | office、QQ等 |
游戏软件 | 绝地求生、和平精英等 |
1.2 软件的基本组成
1.3 软件产生过程
测试人员职能:测试产品开发和需求文档是否一致。
1.4 什么是软件测试
定义:使用技术手段验证软件是否满足使用需求。
1.5 软件测试的目的
- 减少软件缺陷(bug)
- 保证软件质量
2 测试的主流技术
共四类:功能测试、自动化测试、接口测试、性能测试。
2.1 功能测试
2.2 自动化测试
相当于功能测试。
2.3 接口测试
定义:使用代码或工具对服务端提供的接口进行测试。
2.3.1 工具实现
2.3.2 代码实现
2.4 性能测试
意义:模拟多人使用软件,查找服务器缺陷。
示例:
2.4.1 工具实现
2.4.2 代码实现
3 常见的测试分类
- 按测试阶段分
测试种类 | 描述 |
---|---|
1.单元测试 | 针对程序源代码进行测试 |
2.集成测试 | 又称接口测试,针对程序接口进行测试 |
3.系统测试 | 对整个系统(程序功能、非功能)进行测试,包括功能、兼容、文档等测试 |
4.验收测试 | 主要分为内测、公测,使用不同用户来发掘项目缺陷 |
- 按代码可见度分
测试种类 | 描述 |
---|---|
黑盒测试 | 不关注源代码,针对程序UI功能进行测试。(功能测试、非功能测试 或 系统测试) |
灰盒测试 | 针对程序部分代码进行测试。(接口测试 或 集成测试) |
白盒测试 | 针对程序源代码进行测试。(单元测试) |
- 其他角度
测试种类 | 描述 |
---|---|
性能测试 | 归属专项测试。(非功能测试) |
自动化测试 | 归属功能测试。 |
4 质量模型
定义:质量模型是衡量一个优秀软件的维度。
示例:
案例需求
1、开发一款网络游戏。(要求:10个主功能)
2、游戏支持web(浏览器)端、APP端 。
3、游戏上线后预计每日,20W用户玩家在线。
4.1 功能性
4.2 性能
4.3 兼容性
4.4 可移植性
4.5 易用性
要求:简洁、友好、流畅、美观等。
4.6 可靠性
4.7 安全性
4.8 可维护性
5 软件测试流程
5.1 如何开展软件测试的工作?
- 需求评审:确保各部门需求理解一致
- 计划编写:测什么、谁来测(人员进度及安排)、怎么测
- 用例设计:验证项目是否符合需求的操作文档
- 用例执行:项目模式开发完成,开始执行用例文档实施测试
- 缺陷管理:对缺陷进行管理的过程(提交、验证、关闭)
- 测试报告:实施测试结果文档
6 测试用例
6.1 什么是用例?
用例:用户使用的案例
示例:手机
6.2 什么是测试用例?
定义:是为测试项目而设计的执行文档
为什么要执行文档?为了更方便、更精准执行验证点。
6.3 测试用例的作用
- 防止漏测
- 实施测试的标准
6.4 用例设计编写格式
① 八要素(用例编号、用例标题、项目/模块、优先级、前置条件、测试步骤、测试数据、预期结果)
② 优先级P0最大,(正确、成功步骤的优先级是P0)
③测试数据,有些需要略写,突出重点
6.5 用例格式说明
6.5.1 备注
- 前置条件 = 预置条件
- 标题比内容大两号,加粗,居中,底色:科技蓝,冻结首行(视图——冻结首行)
- 边框:所有框线
- 用例编号如wx_login_001
- 单元格换行:Alt + 回车键
- 内容太多,自动换行(开始——自动换行)
- 只想看某一模块,用筛选
6.5.2 用例设计编写格式
- 用例编号:项目_模块_编号
- 用例标题:预期结果(测试点)
- 模块/项目:所属项目或模块
- 优先级:表示用例的重要程度或者影响力P0~P4 (P0最高)
- 前置条件:要执行此条用例,有哪些前置操作
- 测试步骤:描述操作步骤
- 测试数据:操作的数据,没有的话可以为空
- 预期结果:期望达到的结果
6.6 练习
根据以下测试点编写用例
需求:QQ登录(4条)
1.账号为空
2、账号未注册
3、密码为空
4、密码错误
注意:前置条件和测试步骤不同,前置条件没写好会造成测试步骤繁琐。