测试概论之系统测试

news2024/12/24 10:25:55

系统测试

文章目录

  • 系统测试
    • 一、系统测试定义
    • 二、系统测试的对象
    • 三、系统测试类型
      • 1、功能测试
      • 2、性能测试
      • 3、压力测试
      • 4、容量测试
      • 5、GUI 测试
      • 6、可以性测试
      • 7、安装性测试
      • 8、配置测试
      • 9、异常测试
      • 10、备份测试
      • 11、健壮性测试
      • 12、文档测试
      • 13、在线帮助测试
      • 14、网络测试
    • 四、系统测试过程
      • 1、测试过程分为四个阶段
      • 2、计划阶段:
      • 3、设计阶段
      • 4、实现阶段
        • 5、执行阶段
    • 五、执行测试
      • 1、系统测试执行分以下阶段:
      • 2、系统测试环境
      • 3、系统测试预测试
      • 4、执行系统测试
      • 5、系统测试日报
      • 6、系统测试报告写作和评审
    • 结语

一、系统测试定义

系统测试(System Testing)是将已经集成好的软件系统,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持的软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的测试活动。


1、系统测试的目的:是通过与系统的需求定义做比较,发现软件与系统定义不符合与之矛盾的地方。

测试的依据是 需求说明书(需求任务书)SRS

二、系统测试的对象

有纯软件,有的是软硬件结合。

三、系统测试类型

1、功能测试
2、性能测试
3、压力测试
4、容量测试
5、安全性测试
6、GUI测试
7、可以性测试
8、安装测试
9、配置测试
10、异常测试(恢复性测试)
11、备份测试
12、健壮性测试
13、文档测试
14、在线帮助测试
15、网络测试
16、稳定性测试

1、功能测试

功能测试是根据产品的需求规格说明书测试需求列表,验证产品的功能实现是否符合产品需求规格。
测试主要是为了发现以下几类错误:
1、是否有不正确或遗漏的功能。
2、功能实现是否满足用户需求和系统设计的隐藏需求。
3、输入呢能否正确接受,能否正确输出结果。

上面的需求主要分 显性 、隐性
1、显性:是正向的需求 、需求书上明确的那些可以做,那些不可以做,显性需求不容易出现bug,但四一旦出现,就是比较严重的bug。
2、隐性:是逆向的需求,就是虽然需求书上面没有明确规定,但是按照常理应该有的,隐性需求容易出现bug,但是一般没有显性严重。

2、性能测试

性能测试就是同来测试软件在集成系统中的运行性能的。


性能测试的目的是度量系统相对于预定义目标的差距。(就是在教研功能是否正常,而不是关注指标达成情况),

所以性能测试是在功能测试通过之后在执行的。

性能测试关注的各类指标:
1、cpu使用情况
2、内存使用情况
3、系统反应时间
4、功耗
5、流量

3、压力测试

压力测试的目的是调查系统在其资源超负荷的情况下的表现。
通过基线测试方法,发现系统在基线或恶劣环境下的自我保护能力,主要是验证系统的可靠性。

4、容量测试

容量测试的目的是使系统城市超额的数据容量来发现它是否能到正确处理。
容量测试是详细数据的,并且它的目的是像是系统可以处理目标内确定的数据容量。
测试要点:关键是在于测试一个最大值。

5、GUI 测试

GUI测试是针对软件系统GUI 界面记性的测试。
主要测试内容:
1、界面实现与界面设计的吻合情况。
2、确认界面处理的正确性。
GUI系统分为3个层次 -----界面层、界面与功能的接口层、功能层
GUI测试重点在界面层和界面与功能的接口层。

6、可以性测试

可用性测试是为了检测用户在理解和使用系统方面到底有多好。主要是保证用户能够舒适的和系统交互。

7、安装性测试

安装性测试的目的就是要验证成功安装系统的能力。
安装测试要点:

安装测试包含3部分:
1、安装前测试:
		a、不仅要检查安装包文件是否齐全,还要检查安装手册。
2、安装中测试:
		a、主要检查安装流程,并检查安装时文件、注册表、数据库的变动。
3、安装后测试:
		a、主要检查安装好后软件能否运行,基本功能是否正常,
		b、检查安装后的文件、文本、目录结构是否正确。
		c、能否正常卸载、和升级。

8、配置测试

配置测试主要测试系统在各软硬件配置、不同的参数配置下具有的功能和性能。
验证全部配置的可操作性和有效性。

9、异常测试

系统异常测试又叫系统容错测试和可恢复性测试,它是通过人工干预手段使系统产生软、硬件异常,通过验证系统异常前后的功能和运行状态。达到检验系统的容错、和可恢复的能力。(是系统可靠性评价的重要手段)

10、备份测试

备份测试是恢复性测试的一个补充,目的是验证系统在软件或者硬件故障的情况 下备份数据的能力。

11、健壮性测试

健壮性测试有时候也叫容错性测试,主要看是否能够自动恢复,或者忽略故障继续运行。

12、文档测试

文档测试主要是对系统提交给用户的文档是否正确,并且保证操作手册的过程能够正确工作。

13、在线帮助测试

在线帮助测试主要用于验证系统的实时在线帮助的可用性和正确性。

14、网络测试

是在网络环境下和其他设备进行对接,进行系统功能、性能与指标方面的测试,保证对接设备正常。
通信产品的协议测试主要关注以下及格方面:
1、一致性测试:测试所实现的系统与协议规范的符合程度。
2、性能测试:检测协议实体或系统的性能指标(数据传输速率、链接时间、吞吐量、并发性)
3、互操作性测试:不同厂商之间、同一协议在不同实现版本之间的互通能力,和互操作能力。
4、坚固性测试:检测协议实体或系统在各种恶劣环境下运行能力。

四、系统测试过程

1、测试过程分为四个阶段

1、系统测试计划阶段:完成系统测试计划
2、系统测试设计阶段:完成系统测试方案
3、系统测试实现阶段:完成系统测试用例、测试规程、系统测试预测试
4、系统测试执行阶段:执行系统测试预测试项、系统测试用例,修改发现的问题并进行回归测试,提交系统测试预测试报告、系统测试报告、缺陷报告。

2、计划阶段:

计划由测试经理或测试组长完成
虽然不是经理或组长 面试也可能问你这个部分的内容,因为虽然不写 但是你要看,我们要根据计划开展工作
强调做什么
在这里插入图片描述
1、入口准则:满足什么条件才进入该测试阶段。
需求规格说明书已经基线化(基线化:就是通过了评审,取得了项目组和甲方的认可,是一个标准化的文件)。
2、输入:该阶段工作需要参考的资料。

	1、软件开发书:因为开发不结束工作,无法进行测试
		a、注意:1、开发的计划可能分阶段,然后测试也是可以根据开发的阶段开始测。
		b、注意:2、开发也可能分系统或模块完成代码,测试也将开展对应的测试工作。
	2、软件测试计划:指的是整个测试计划(总计划、集成、系统、验收、α, β),系统测试计划是针对系统测试的详述)
	3、c.需求规格说明书:参考需求说明书 --评估测试对象  测试时间, 任务如何分配

计划大概内容:

		1.测试对象:(系统, 子系统, 模块)
		2.测试类型:功能,性能,兼容,GUI 前面讲的一嘟嘟
		3.测试任务分配:张三 李四 .... 负责什么
		4.时间安排:整体时间 和里程碑时间(模块的里程碑, 测试类型的里程碑);时间颗粒度:敏捷:刻钟, 小时,一般:天, 周 ,月 注意我们安排时间只考虑工作日
		5.环境搭建(可能出现在方案中)
		6.通过失败标准
		7.风险评估及解决方案(可能出现在方案中)
		8.挂起恢复条件(可能出现在方案中)

出口准则:达到什么目标才能结束该阶段的工作

输出:每个阶段的工作产出 分成阶段性和完整的 ; 对内和对外的;是下一阶段工作的输入
系统测试计划: 阶段性的对内的产出

3、设计阶段

方案也是由经理或组长完成
虽然不是经理或组长 面试也可能问你这个部分的内容,因为虽然不写 但是你要看,我们要根据方案写测试用例
强调怎么做
注意:现在很多企业已经没有方案了,方案部分合并到了计划中
在这里插入图片描述
输入:需求规格说明书—》 贯穿整个项目的生命周期;需求在不同阶段和不同情况下会发生改变
为什么每一步都要看需求?
1.验证:看当前步骤的对象是否正确 如测试代码本身是否正常
2.确认:回去看是否和最初的目标一致(需求)
方案:

1.模块的拆分并给出对应的指导
	a.模块拆分 
		i.位置相对集中 功能类似
		ii.模块可以进一步拆分子模块  注意 一般拆分到3层即可
	b.对应指导
		i.手动 检视 点点  用例设计方法(等价类 边界值 判定表 流程分析法......)
		ii.自动(用什么工具, postman jemeter adb  monkey  selenium appium)
		iii.注意甚至可以细化到测试用例程度
2.环境搭建(可能出现在计划中)
3.风险评估及解决方案(可能出现在计划中)
4.挂起恢复条件(可能出现在计划中)

这个阶段的产出属于:阶段性,对内的

4、实现阶段

开始交由测试工程师开始入手完成。
在这里插入图片描述
出口准则:
系统测试用例、
根据测试用例设计方法按标准化的格式(编号,模块,子模块,标题, 重要级别, 前置条件, 数据, 操作步骤, 预期结果)编写测试用例

系统测试规程、

1.测试用例执行的先后顺序
	a.优先级
	b.不同用例如果有先后关联关系 要一起完成 不再考虑优先级的问题

系统测试预测试项评审并通过
	1.预测试: 全面展开系统测试前进行的测试,主要测核心功能,测试时间比较短、也是有对应的测试用例
	2.评审并通过:必须预测通过才能进行 系统测试 如果不通过要打回至开发处

这部分的产出: 阶段性的和对内的

5、执行阶段

就是在软件开发将开发好的产品,交到测试工程师这版,然后测试工程师根据测试用例按照等级,进行测试。
在这里插入图片描述

这个阶段开始测试了

1.先进行预测试(冒烟测试) 当通过测试后才进行全面的系统测试
	a.如果有bug需要进行bug管理
	b.测试结束后要写测试报告 并 进行评审
	
2.进行全面的系统测试
	a.根据用例执行(手动或工具或代码)
	b.有bug需要进行bug管理
	c.测试完成后要写测试报告并进行评审
	
3.bug管理工具(禅道, jira, 一般有实力的公司(银行,车机)有自己的管理系统)
4.注意如果出现bug 要先回测bug 再 继续当天到测试
5.报告
	a.日报(周报):今天做了啥,又没达标,明天准备干啥,如果有需要帮助的或困难需要说明
	b.测试总结报告:
		1.用例的执行情况
			1.执行率
			2.通过率(分重要级别, 模块)
		2.bug情况
			a.模块
			b.严重程度
			c.趋势
			d.遗留情况
		3.总结 根据1和2的情况 评估测试是否通过

系统预测试报告 ------>阶段性 可以是对内也可以是对外
系统测试报告 ------->完整的,对外的 要给甲方
缺陷报告-------------->对内的 不要给甲方权限进缺陷管理系统看的权限

五、执行测试

按照系统测试计划,依据辞退测试用例,完成测试的各项操作任务。

1、系统测试执行分以下阶段:

  • 构造系统测试环境
  • 系统测试预测试
  • 转系统测试评审
  • 执行系统测试、进行系统测试记录,填写测试日报
  • 提交缺陷报告并反馈和跟踪缺陷解决,进行缺陷管理
  • 撰写并评审系统系统测试报告

系统环境:
1.有可能是开发,运维,或者是我们自己搭建
2.环境有可能有多套:比如 按不同的测试类型搭建,功能,性能
测试记录:测试用例执行后,需要对用例进行标注: pass fail block NA NS
测试报告:由组长或经理汇总完成,测试工程师提供自己负责部分的数据

2、系统测试环境

根据系统测试方案,搭建系统测试环境是系统测试执行的一个重要步骤,测试环境适合与否会严重影响测试结果的真实性和正确性。

  • 系统测试环境包含

1、支撑北侧软件运行的硬件设备。
2、被测软件
3、被测软件配套的操作系统、数据库等系统软件
4、被测数据
5、相关资料文档

3、系统测试预测试

验证软件系统基本功能或预测主要的系统功能,以确保其后的系统测试执行能够顺利进行。
系统测试预测试也被称为冒烟测试。

4、执行系统测试

  • 按照软件测试规程执行系统测试、进行系统测试记录,每日调教测试日报。
  • 执行测试过程中,发现缺陷,要及时填写缺陷报告,并跟踪缺陷的解决,做好问题的追踪和解决记录。
  • 软件系统测试规程:如果没有这个文件,就按照用例的重要程度和用例的先后关联关系执行
  • 测试记录:主要是指标注测试例的执行情况
  • 缺陷报告:key bug(不一定都是key给开发, 有可能key给需求, 美工)
  • 做好问题跟踪和解决记录: key bug后 对bug的处理(开发修复bug, 测试进行回归测试)需要在管理系统中有记录
  • 分析回溯软件产品产生问题的原因,(测试做初步定位,如前端,后端,代码的问题,数据库的问题----》开发根据我们提供的方向进一步分析根源,并解决)
  • 通过缺陷分析,判断软件产品与设计要求的符合度。:排除环境,操作后就是bug。一般 测试发现40%以上的bug 就可以叫停了

5、系统测试日报

  • 测试人员总结每天的测试工作,便于了解自己的测试进度和测试情况,用以调整下一天的工作计划
  • 测试人员对被测对象每天给出评估结果,用以调整后续工作中的测试策略
  • 测试人员向测试经理反映测试中的困难,保证测试的顺利进行
  • 测试经理通过测试日报,了解每个测试人员的工作进度,把握测试的整体进度,发现进度上的风险及时调整计划
  • 测试经理通过测试日报,了解各模块缺陷发展趋势,判断测试是否可以退出
    (缺陷发展趋势
    1.逐渐减少趋于0 可以退出
    2.每天都很平稳 不能
    3.越来越多 不能推出)
  • 开发经理可以通过软件测试日报了解当前被测试软件的质量情况,并可以调整缺陷修改的人力资源
  • 如果产品有多个测试组并行测试,测试日报可以提供彼此测试交流的手段

6、系统测试报告写作和评审

  • 依据系统测试计划的测试用过准则,结束系统测试后,撰写系统测试报告。
  • 系统测试报告需要通过评审,责任人为软件测试项目组,评审不过,报告将退回。
  • 评审通过后,系统测试相关文档代码、工具等均需要跟随软件代码、开发文档一起归档。系统测试过程结束。
  • 测试通过准则:

1.用例情况分析 a.执行度 b.覆盖度 c.通过率
2.bug情况分析 a.分布模块 b.趋势 c.遗留情况(bug的严重程度具体分析)

结语

未完待补充…

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1991767.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为什么奥运会采用通义而不是 OpenAI,现在中国的 AI 技术是世界领先了吗?

奥运会作为全球最盛大的体育赛事之一,一直在不断地引入和利用最新的科技来提升赛事的组织效率、观众体验以及运动员的表现。在2024年巴黎奥运会上,人工智能(AI)技术的应用尤为引人注目。 首先,关于奥运会采用的技术选…

数字噪音计(声级计)【AR814数字噪音计】

系统介绍 声级计,又叫噪音计,是噪声测量中最基本的仪器。声级计一般由电容式传声器、前置放大器、衰减器、放大器、频率计权网络以及有效值指示表头等组成。 声级计的工作原理是:由传声器将声音转换成电信号,再由前置放大器放大…

【json解析】控制台打印json字符串格式正确,但json.loads()解析失败问题解决

问题为控制台打印json字符串格式正确,但json.loads()解析失败。看似简单的问题,却又折腾了好一会,因此记录一下解决方法! 出现这个问题的原因:眼见不一定为实,控制台打印的json字符串并不一定是实际的json字…

Typora v1.9.5解锁版下载、安装教程 (轻便简洁的Markdown编辑器)

前言 Typora是一款轻便简洁的Markdown编辑器,支持即时渲染技术,这也是与其他Markdown编辑器最显著的区别。即时渲染使得你写Markdown就想是写Word文档一样流畅自如,不像其他编辑器的有编辑栏和显示栏。 一、下载地址 下载链接:…

软件测试---Fiddler抓包

一、初识Fiddler ①BS架构简介和请求过程理解 ②Fiddler原理 Fiddler是一个代理服务器。代理地址:127.0.0.1,端口:8888。浏览器可以通过设置查看代理服务器:设置->高级->打开您计算机的代理设置->连接->局域网设置->代理服务器->在高级…

Vulnhub靶场-FRISTILEAKS: 1.3

1.环境准备 下载地址:https://www.vulnhub.com/entry/fristileaks-13,133/ 攻击机:kali(192.168.26.128) 靶机:FRISTILEAKS: 1.3 将靶机和kali的网络连接模式设置为同一种模式(Nat模式) 注…

【linux】linux中特殊权限管理--FACL详细用法教程与应用实战

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…

MM 14 -采购- 固定资产采购

思维导图 说明 特点: 价值大于2000就算固定资产采购。 不做料号管理 不做库存管理 但是财务做资产卡片管理 流程: 01采购申请意向表---02资产评估表--03财务创建资产卡片AS01--04创建采购申请(科目分配类别A)--05采购订单--06…

不学函数式设计的3大损失

讲动人的故事,写懂人的代码 可能很多程序员和我一样,一直在一次次地重新入门函数式编程(和设计)。因为我们总是学了就忘。 鲍叔去年出版了他的大作《函数式设计》,里面有大量Clojure代码示例。如果不懂Clojure&#x…

【工具推荐】四千个厂商默认帐号密码

一、下载地址 WX关注公众号“光剑安全”,发送“20240808厂商”即可获得文档 二、 文档介绍 里面包括多个web产品,多个数据库:mysql、redis、MSSQL (mssql)等 多个服务协议:telnt、ssh、ftp、rdp等 无偿分享技术文章&#xff0c…

Elsevier 旗下又一宝藏SCI!国人发文超五成,8天上线,硕博圈的“易投易中”首选刊!

【SciencePub学术】本期,小编给大家介绍的是1本计算机类的SCI,位于JCR2区中科院4区,影响因子2.6分。 众所周知,顶刊的普遍毛病就是“速度慢,要求严”,这也是让大多数人望而却步的主要原因。虽然此刊影响因子…

栈和队列(数据结构)

1. 栈(Stack) 1.1 概念 栈 :一种特殊的线性表,其 只允许在固定的一端进行插入和删除元素操作 。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO ( Last In First Out )的原…

Profinet 转 4路 MODBUS 网关

一、功能概述 1.1 设备简介 本产品是 Profinet 和 Modbus RTU 网关,使用数据映射方式工作。 本产品在Profinet侧作为Profinet从站,接西门子PLC 如 1200、1500、200Smart 等;在 Modbus RTU 侧做为 RTU 主站或从站,接 ModbusRTU …

FLUX.1 实测,堪比 Midjourney 的开源 AI 绘画模型,无需本地显卡,带你免费实战

要列举 AI 绘画开源界的几个关键贡献,一定少不了 Stable Diffusion。 还记否前不久刚推出的 Stable Diffusion 3? 其背后的团队 Stability AI,真的是一波三折,其核心成员出走,成立了一个新公司:Black For…

抖店飞鸽客服自动回复软件开发教程与下载体验(.NET版)

转载请注明出处! 原文链接:https://blog.csdn.net/zgyulongfei/article/details/140960430 本文适合的读者为: 抖店(抖音小店)个体商家;抖店店群商家(店群商家:指的是开了几十个抖…

如何用python实现将中缀表达式改成后缀表达式

例:如何将1 *(3 * 4 /(8 - (7 0)))改成后缀表达式 可以先看看这篇文章,写得很详细清楚 思路 从左到右依次遍历中缀表达式各个字符 第一个字符为运算数,直接输出: 第二个字符为操作符,满足 栈空/优先级高于栈顶操…

[Vue篇]vue3组合式API实现todo列表

今天的例子是使用vue3的一个新 API:computed()。它可以让我们创建一个计算属性 ref,这个 ref 会动态地根据其他响应式数据源来计算其 .value。计算属性会自动跟踪其计算中所使用的到的其他响应式状态,并将它们收集为自己的依赖。计算结果会被…

Typora 伪装 LaTeX 中文样式主题 学习笔记

最近发现一个比较有意思的项目,Typora 伪装 LaTeX 中文样式主题 用来写毕设论文的初稿,格式可以统一控制,比较方便。项目“第五章”源格式是“5 系统测试”靠左,就像5.1一样。搜索了一下获得了一些零散的知识点记下来。 在Typora的…

leetCode- - - 链表

目录 1.反转链表(leetcode206) ​编辑 2. 链表内指定区间反转(leetcode92) 3.链表中的节点每k个一组翻转(leetcode25) 4.合并两个排序的链表(leetcode21) 5.链表的中间节点&am…

揭开 OKR 神秘面纱:打破OKR的概念 –(第1部分)

请注意,《 OKR 解密 》分为5个部分,您目前正在学习其中的一个基本部分(5个部分中的第1部分)。在这5个要素中,我们将从理论(第1部分)、应用(第2部分)、最佳实践&#xff0…