2.测试项目启动和研读需求文档

article/2025/7/18 6:45:00

软件质量需求

  • 定义: 用于确定测试目标,反映用户对软件的要求
  • 分类依据: 分为功能和非功能两大类,其中非功能包含性能、界面等8个子类

软件质量需求的分类

  • 功能需求: 软件能做什么的核心能力
  • 非功能需求:
    • 性能:运行效率和资源占用
    • 界面:用户交互界面
    • 易用性:操作便捷程度
    • 兼容性:软硬件环境适应
    • 安全性:数据保护能力
    • 可用性/可靠性:稳定运行程度
    • 可维护性:后期修改便利
    • 可扩展性:功能扩充能力

性能

核心概念:反映软件运行时效率和资源占用情况的双重能力,用"马儿快跑少吃草"形象比喻

时间特性:要求软件运行时间短、速度快、效率高,三者本质统一(如网站响应速度影响用户体验)

资源特性:需控制CPU、内存、硬盘、网络等资源消耗,典型场景包括高并发时的服务器资源占用

界面

布局原则:控件对齐间距合理(如用户名/密码应前置),遵循常见操作习惯

视觉规范:

文字:杜绝乱码,字号适配使用场景(如老年应用需更大字体)

颜色:避免刺目配色(如纯黑背景配亮黄文字)

元素:图片/表格需符合内容逻辑

测试重点:窗口整体美观度与舒适性,属于基础但重要的软件需求

易用性

核心定义:在指定条件下软件被理解、学习、使用和吸引用户的能力

典型场景:

回车键触发确定按钮(优于强制鼠标点击)

文本框自动聚焦(如登录界面默认光标在用户名栏)

Tab键字段切换(替代纯鼠标操作)

测试特点:与界面测试类似但更侧重操作流畅性,属于提升用户体验的关键指标

兼容性

  1. 不同硬件的兼容性测试
    测试维度:CPU(英特尔/AMD不同品牌,2.5GHz/3.5GHz不同频率)、内存大小/品牌、硬盘容量、网络带宽
    典型案例:同一软件在高低配设备上的运行稳定性对比
  2. 不同操作系统的兼容性测试
    平台覆盖:Linux/Windows多版本(Win7/Win8/Win10)的适配验证
    迁移能力:衡量软件跨平台运行时的功能完整性
  3. 软件自身不同版本的兼容性
    版本共存:如Office2007/2013/2016能否并行安装使用
    数据延续:1.0版本生成文件在2.0版本中的可读写性
  4. 软件与其他软件的兼容性
    冲突案例:历史著名的QQ与360安全卫士互斥事件
    协作测试:与杀毒软件、输入法等常用工具的共存验证
  5. 数据的兼容性测试
    文档互通:WPS与MS Word文件互相打开的格式支持
    数据库迁移:SQL Server 2008升级到2016时原有数据的可用性
    架构转换:SQL Server到Oracle数据库的数据移植测试
  6. 网页在不同浏览器中的兼容性
    BS架构测试:Chrome/Firefox/Edge等多浏览器渲染一致性
    响应式验证:不同分辨率下的页面布局适配
  7. 兼容性要求的特定规定
    约束条件:如明确限定仅支持IE浏览器时,无需测试其他浏览器
    标准制定:根据产品发布说明确定兼容性测试范围

文档

需求分析

文档类型: 包括开发需求分析文档、开发计划、设计文档(详细设计)、编码文档、用户使用说明、联系帮助等所有相关文档

需求分析四大步骤:1. 收集研读文档 2. 功能拆分与描述 3. 编写测试点 4. 需求评审

文档研读要点:提取需求信息(功能/性能/安全性等)、解决文档中的模糊问题

功能拆分方法:模块化分解(如注册流程步骤)、文字化详细描述操作逻辑

需求评审目标:验证需求与用户真实意图的一致性,排查冗余/遗漏/理解偏差

问题解决路径:通过咨询产品经理/开发/测试经理等角色澄清需求疑问

  • 研读方法:
    • 提取有用的需求信息,了解软件的功能、性能、易用性、兼容性、安全性等要求
    • 提出文档中不清晰、不理解、不明白的问题
    • 与用户、业务人员、产品经理、开发人员等沟通解决问题

功能拆分与功能描述

  • 功能拆分: 将软件功能分解为独立模块(如QQ的注册、登录、聊天)
  • 细分要求: 每个功能需要进一步细分(如登录方式可细分为账号密码登录、扫码登录等)
  • 功能描述:
    • 用文字详细描述每个功能的实现方式
    • 示例:注册流程需描述注册方式、必填信息、验证机制等

文档研读流程: 收集与研读文档→提出问题并沟通解决→整理需求信息→功能拆分与描述→编写测试点→需求评审

研读文档
  • 用户分析: 需要分析软件的用户群体和实际需求,这是测试工作的基础。
  • 技术环境: 必须了解开发环境、开发语言、数据类型等底层技术要素。
  • 架构分析: 要掌握软件架构、运行环境、平台特性和数据库类型。
  • 目标明确: 需要明确测试的功能、性能、界面、易用性、兼容性、安全性等具体目标和要求。
  • 功能分解: 分析软件功能模块,理解每个功能要完成的业务及其实现方式、业务逻辑和流程。
  • 优先级判断: 识别功能或业务间的关联性,确定关键业务和重要功能。
  • 测试规划: 明确测试周期、测试目标和测试范围,这是测试工作的指导框架。

http://www.hkcw.cn/article/iikVGeKYYN.shtml

相关文章

在 Android 上备份短信:保护您的对话

尽管我们的Android手机有足够的存储空间来存储无数的短信,但由于设备故障、意外删除或其他意外原因,您可能会丢失重要的对话。幸运的是,我们找到了 5 种有效的 Android SMS 备份解决方案,确保您的数字聊天和信息保持安全且可访问。…

02业务流程的定义

1.要想用好业务流程,首先必须得了解流程与认识流程,什么是业务流程。在认识流程之前,首先要理清两个基本概念,业务和流程。 业务指的是:个人的或者摸个机构的专业工作。流程,原本指的是水的路程&#xff0…

PHP7+MySQL5.6 查立得源码授权系统DNS验证版

# PHP7MySQL5.6 查立得源码授权系统DNS验证版 ## 一、系统概述 本系统是一个基于PHP7和MySQL5.6的源码授权系统,使用DNS TXT记录验证域名所有权,实现对软件源码的授权保护。 系统支持多版本管理,可以灵活配置不同版本的价格和下载路径&#…

vue+threeJs 绘制3D圆形

嗨,我是小路。今天主要和大家分享的主题是“vuethreeJs 绘制圆形”。 今天找到一个用three.js绘制图形的项目,主要是用来绘制各种形状。 项目案例示意图 1.THREE.ShapeGeometry 定义:是 Three.js 中用于从 2D 路径形状&#xff08…

vue+threeJs 生成一个圆柱体

嗨,我是小路。今天主要和大家分享的主题是“vuethreeJs 生成一个圆柱体”。 案例示例图 1.CylinderGeometry 定义:创造一个圆柱体。 属性列表列表说明 radiusTop 顶部半径 radiusBottom 底部半径 height 高 radialSegments 横向分段&#xff…

VUE中created() 和 mounted()俩种生命周期钩子函数的区别

在 Vue.js 中,created() 和 mounted() 是两个关键的生命周期钩子函数,它们的主要区别在于​​调用时机​​和​​可访问的实例属性​​: 调用时机 ​​created()​​ 在 Vue 实例创建完成后立即调用(​​数据初始化完成&#xff…

ASP.NET MVC添加模型示例

ASP.NET MVC高效构建Web应用ASP.NET MVC 我们总在谈“模型”,那到底什么是模型?简单说来,模型就是当我们使用软件去解决真实世界中各种实际问题的时候,对那些我们关心的实际事物的抽象和简化。比如,我们在软件系统中设…

【免费赠书8本】《扣子开发AI Agent智能体应用》

【图书介绍】《扣子开发AI Agent智能体应用》-CSDN博客 博主免费赠书《扣子开发AI Agent智能体应用》8本。 想要赠书的朋友,请在本文后面加评论,要求赠书。 收到赠书后,受赠书的朋友,两周内在CSDN博客上发一遍博文,…

stm32无刷电机控制_滑膜观测器更改电机如何调整?

这个教程是针对KY_Motor的无刷电机开发板,滑膜观测器反正切的补充教程,大家比较关注现有的程序如何适配到自己的电机上,因此我们团队推出了如下教程,让大家在学习的过程中有迹可循。 开发板链接:开发板 1. 电机电气参…

Vad-R1:通过从感知到认知的思维链进行视频异常推理

文章目录 速览摘要1 引言2 相关工作视频异常检测与数据集视频多模态大语言模型具备推理能力的多模态大语言模型 3 方法:Vad-R13.1 从感知到认知的思维链(Perception-to-Cognition Chain-of-Thought)3.2 数据集:Vad-Reasoning3.3 A…

【Doris基础】Doris中的Tablet详解:核心存储单元的设计与实现

目录 1 Tablet基础概念 1.1 什么是Tablet 1.2 Tablet的核心特性 1.3 Tablet与相关概念的关系 2 Tablet的架构设计 2.1 Tablet的整体架构 2.2 Tablet的存储结构 3 Tablet的生命周期管理 3.1 Tablet的创建流程 3.2 Tablet的数据写入流程 3.3 Tablet的压缩与合并 4 Ta…

因泰立科技:镭眸T51激光雷达,打造智能门控新生态

在高端门控行业,安全与效率是永恒的追求。如今,随着科技的飞速发展,激光雷达与TOF相机技术的融合,为门控系统带来了前所未有的智能感知能力,开启了精准守护的新时代。因泰立科技的镭眸T51激光雷达,作为这一…

Delphi读写Mifare Desfire Ev1 Ev2 EV3卡修改AES密钥源码

本示例使用的发卡器:https://item.taobao.com/item.htm?spma21dvs.23580594.0.0.52de2c1b3bN1Vu&ftt&id917152255720 unit Unit2;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls,declaredl…

第T10周:数据增强

import matplotlib.pyplot as plt import numpy as np #隐藏警告 import warnings warnings.filterwarnings(ignore)from tensorflow.keras import layers import tensorflow as tf gpus tf.config.list_physical_devices("GPU")if gpus:tf.config.experimental.set…

Python_day40

昨天我们介绍了图像数据的格式以及模型定义的过程,发现和之前结构化数据的略有不同,主要差异体现在2处 1. 模型定义的时候需要展平图像 2. 由于数据过大,需要将数据集进行分批次处理,这往往涉及到了dataset和dataloader来规范代码…

MSTNet:用于糖尿病视网膜病变分类的多尺度空间感知 Transformer 与多实例学习方法|文献速递-深度学习医疗AI最新文献

Title 题目 MSTNet: Multi-scale spatial-aware transformer with multi-instance learning for diabetic retinopathy classification MSTNet:用于糖尿病视网膜病变分类的多尺度空间感知 Transformer 与多实例学习方法 01 文献速递介绍 糖尿病视网膜病变&#…

Linux上安装MongoDB

目录 一、在Linux系统安装MongoDB服务器 1、下载MongoDB 2、上传MongoDB并解压 3、创建必要目录 4、配置环境变量 5、创建配置文件 6、启动命令 7、验证安装 二、在Linux系统安装MongoDB客户端Shell 1、下载MongoDB Shell 2、上传MongoDB Shell并解压 3、配置环境变…

muduo库的初步认识和基本使用,创建一个简单查询单词服务系统

小编在学习完muduo库之后,觉得对于初学者,muduo库还是有点不好理解,所以在此,小编来告诉大家muduo库的初步认识和基本使用,让初学者也可以更快的上手和使用muduo库。 Muduo由陈硕大佬开发,是⼀个基于 非阻塞…

格恩朗超声波水表 助力农业精准灌溉与振兴​

在农业现代化的征程中,水资源的精准利用至关重要,而这离不开高精度计量设备的支持。大连格恩朗品牌积极响应国家全面推进乡村振兴、加快农业农村现代化的号召,精心打造的超声波水表,凭借其超高精度,成为绿色灌溉领域的…

Nginx进阶篇(静态资源的缓存处理、Nginx中与浏览器缓存相关的指令、Nginx的跨域问题、静态资源防盗链)

文章目录 1. 静态资源的缓存处理1.1 什么是缓存1.2 什么是Web缓存1.3 Web缓存的种类1.3.1 客户端缓存1.3.2 服务端缓存 1.4 为什么要用浏览器缓存1.5 浏览器缓存的执行流程1.6 浏览器强缓存和弱缓存的区别1.6.1 强缓存(Strong Cache)1.6.2 弱缓存&#x…