doc/笔记/系统测试-xtceshi.md

278 lines
7.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 系统测试
date: 2023-04-14 10:55:45.782
updated: 2023-04-14 14:43:06.933
url: /archives/xtceshi
categories:
- 软件测试
tags:
- 测试基础
---
## 什么是系统测试
检查已经集成的软件是否和需求规格说明书一致
**系统种类**桌面软件Web 网站,客户端软件,移动 App小程序智能设备
单元测试 集成测试 系统测试比较
- 单元测试
- 对象:函数
- 依据:详细设计 LLD
- 重点:函数的功能和内部的逻辑
- 评估:逻辑覆盖率
- 方法:白盒测试为主
- 集成测试
- 对象:模块
- 依据:概要设计 HLD
- 重点:模块的功能和函数间的调用(接口)
- 评估:接口覆盖率
- 方法:灰盒测试
- 系统测试
- 对象:整个软件
- 依据:需求规格说明书 SRS
- 重点:功能测试,性能测试,安全性测试,界面测试 ...
- 评估:需求规格覆盖率
- 方法:黑盒测试为主
## 系统测试活动
**计划**
输入:需求规格
输出:系统测试计划
**设计**
输入:需求规格,系统测试计划
输出:系统测试方案
**实现**
输入:需求规格,系统测试计划,系统测试方案
输出:系统测试用例,系统**预测试**用例
**执行**
输入: 系统测试计划,系统测试方案,系统测试用例,系统预测试用例,集成测试报告
输出:系统测试结果,系统测试缺陷报告,系统测试报告
## 系统测试类型
#### 功能测试
质量模型中的 **功能性**
分类:单功能测试,功能交互测试,业务场景测试
#### 性能测试
质量模型中 **效率**
性能测试指标响应时间吞吐量、吞吐率单位时间内的吞吐量TPS(每秒处理事务数) 并发用户数内存占用CPU占用磁盘占用功耗流量
性能测试是一个大的测试类型,是所有性能相关测试的统称。可以细分为几个子测试类型:
- **负载测试(相对并发)**
测试系统在各种负载情况下,是否满足 **需求规格说明书各项性能指标** 相关要求,并测试出**系统最大负载**
主要测试系统的**能力**
- **压力测试**
测试系统在 **极限负载** 况下是否会崩溃,各项性能指标在 **长时间运行** 的情况下是否稳定
主要测试系统的**耐力**
- **容量测试**
测试系统可处理 **同时在线的最大用户数**
只关注数量多少,不关注速度多快
- **基准测试**
用于一些大型的网站的性能测试
找一台普通服务器,针对 **不同版本的软件** 进行小容量的测试,进行对比
- **并发测试**(绝对并发)
测试多个用户同时访问同一个应用、同一个模块或者数据记录时是否存在问题
![](/upload/2023/04/image-1681441029628.png)
#### 界面测试
质量模型中 **易用性的易理解性和吸引性**
又叫 GUI 测试。有些公司把界面测试并入功能测试
- 测试界面元素的显示
- 界面元素大小,形状,色彩
- 界面元素文字的字体,字号,对齐
- 光标位置
- 输入回显
- 测试界面元素的行为
- 输入限制,输入检查,输入提醒
- 默认值
- 出错信息位置
- 测试界面的布局
- 各界面元素所在位置
- 各界面元素对齐方式
- 各界面元素之间的间距
- 各界面元素之间的色彩搭配
#### 易用性测试
质量模型中 **易用性的易操作性**
软件操作方便,操作步骤少
- 桌面软件菜单级数不超过 3 级
- 电商网站分类导航不超过 3 级
- 输入区域切换使用快捷键
- 右键菜单
- 手机App单手操作
#### 兼容性测试
质量模型中 **可移植性的适应性**
考虑不同环境下功能测试,界面测试。
- 客户端软件:兼容不同操作系统
- web软件兼容不同浏览器
- 移动App兼容不同手机、型号、分辨率、操作系统、操作系统版本
#### 安全性测试
质量模型中 **功能性的保密安全性**
- **数据的安全性**:考虑敏感数据从产生-传输-存储全程加密
- **权限的安全性**:水平越权、垂直越权、第三方授权
- **安全漏洞**
#### 安装测试
质量模型中 **可移植性的易安装性易替换**
- 安装/升级前测试
- 检查安装包中文件是否齐全(包含环境软件)
- 检查安装包中是否有病毒或木马
- 安装/升级中测试
- 安装流程测试 初次安装,默认配置安装,自定义配置安装
- 升级降级测试
- 异常情况测试 安装目录没有权限,空间不够,安装过程中中止
- 安装/升级后测试
- 程序文件的目录及子目录是否正确产生
- 是否存在无用的目录、子目录、程序文件和临时文件
- 安装日志检查
- 测试安装是否完整
- 测试安装好的软件是否可运行
- 软件的卸载测试
#### 可靠性测试
质量模型中 **可靠性**
- 稳定性测试
常规负载连续运行较长时间不出现问题如网站运行一周7*24
- 容错性测试
- 恢复性测试
从灾难或出错中能否很好地恢复
- 异常测试
软件系统故障,断电,硬件及有关设备故障,通信故障和错误
#### 文档测试
对用户使用手册系统部署文档帮助包括App安装后首次运行的向导等文档进行测试。 检验文档的完整性,正确性,一致性,易理解性和易浏览性
#### 网络测试
不同网络环境下软件是否正常运行
- WIFI
- 2G3G4G5G 移动网络
- 弱网
- 无网
## 系统测试环境
#### 环境组成
- **硬件**
PC服务器网络设备打印机......
- **软件**
操作系统Web服务器软件应用服务器软件数据库软件软件支持平台JDK 被测软件,测试数据,测试脚本,浏览器
#### 环境分类
- 主测试环境例如win10+chrome+1920*1080
- 辅测试环境例如win7+ie8+1024*768
- 真实环境(如弱网考虑电梯、地下停车场)
- 仿真环境如VMwareQNET模拟器
#### 测试数据准备
产品数据(注意隐私和安全,脱敏处理),工具生成,捕获数据,手工构造,随机数据
## 系统测试执行
#### 测试环境搭建
#### 系统测试预测试
基本功能检查,检查软件质量是否满足后续测试要求,也叫**冒烟测试**
**每日构建** Daily Build 每天自动完整编译最新代码
#### 转系统测试评审(可选)
开会确定是否能开始正式的系统测试执行
- 评审点
1.冒烟测试是否通过
2.测试用例是否完成并经过评审
3.测试人员是否到位
4.测试工具是否到位且进行了相关培训
#### 执行测试用例
- 填写测试记录
1.测试用例执行人员
2.测试用例执行时间
3. 测试用例执行结果
4.问题单号
5.执行测试用例数统计
6.测试记录提交人员
- 编写测试日报
汇报每天执行情况
测试日报内容:执行情况,发现缺陷情况,**存在的问题以及需要的帮助**
- 缺陷管理
提交缺陷报告,跟踪缺陷状态,回归测试验证缺陷
#### 编写测试报告(软件)和测试总结(个人)
测试执行结束时