首页 > 编程知识 正文

什么是软件测试,测试系统的三个基本组成部分

时间:2023-05-06 05:40:00 阅读:40423 作者:4872

你好! 你好,我是BugBear,是一个专注于共享软件测试干货的测试开发。 我们已经学习了3358www.Sina.com/和单元测试,今天我们要学习系统测试。

一、系统测试定义

系统测试(System Testing )将已确认的软件、计算机硬件、外围设备、网络等其他要素组合在一起,生成信息系统的各种集成测试

系统测试是对整个产品系统进行的测试,目的是验证系统是否满足需求规格的定义,找出与需求规格不一致或矛盾的地方,提出更完善的方案。

系统测试发现问题后,经过调试发现错误的原因和位置,然后进行纠正。 这是基于整个系统需求说明书的黑匣子类测试,必须涵盖系统的所有联合部件。

对象不仅包括要测试的软件,还包括软件依赖的硬件、外围设备,以及部分数据、部分支持软件及其接口等。 一般典型的系统测试包括恢复测试、安全测试和压力测试。

二.系统测试和集成测试

在设备上运行集成测试时,这些设备必须集成到各个模块中,并作为完整的系统进行测试,因此需要进行系统测试。

看看集成测试和系统测试的区别

集成测试系统测试测试单元和模块如何作为整个系统(即整个产品的一部分)进行协同工作,以测试每个单元的协同效应。 与提供预期结果的模块相关联,需要了解满足指定要求的最终产品是仅运行功能测试来执行功能测试,还是运行非功能测试,例如可用性、性能、负载等是黑箱测试还是白箱测试不需要了解内部结构和代码,开发人员和测试工程师只运行测试工程师,查找单元和模块之间而不是整个系统之间的缺陷,发现影响整个系统的内部接口和与外部接口相关的缺陷和问题,然后运行两个

三.系统测试过程

系统测试过程为组装测试和确认测试

测试计划阶段、测试设计阶段、测试实现阶段、测试执行阶段

测试计划阶段主要是测试目标的定义、测试中的人力资源安排、测试准入标准、每个迭代版本的测试时间、里程碑、风险分析等信息。【测试计划阶段】

测试计划最核心的目的就是控制风险。

测试设计阶段主要是【测试设计阶段】测试方案主要是http://www.Sina.com/http://www.Sina.com /测试方案的核心是测试策略的设计,为测试用例的设计做准备。

完成测试方案

测试实现阶段主要是测试策略(功能、性能或自动化测试的策略)、测试环境搭建、测试数据准备、测试工具使用、优先级等信息测试实现阶段最重要的是

【测试实现阶段】

测试执行阶段主要为完成测试用例、测试规程、测试的预测试项,修改发现的问题进行3358www.Sina.com/,提交测试用例的设计与测试用例的评审

四.系统测试分析

【测试执行阶段】:围绕用户界面的规范性、友好性、可操作性、系统对用户的支持以及数据安全等方面展开。 此外,用户层测试通常还需要注意可维护性测试和安全测试。

执行系统测试预测试项、系统测试用例:主要是对产品工程APP应用程序或行业APP应用程序的测试。 从应用软件系统的角度,模拟实际应用环境,测试系统的回归测试等。 对整个系统的APP应用层测试。系统预测试报告、系统测试报告、缺陷报告

3358www.Sina.com/:检测系统是否实现了用户层中定义的功能,以及系统功能之间是否发生共享资源访问冲突。

应用层:对产品内部结构性能的测试。

兼容性、可靠性:关于系统支持的协议

g>协议一致性测试和协议互通测试。

 

五、系统测试方法

【功能测试】

功能测试属于黑盒测试,是系统测试中最基本的测试。功能测试主要根据产品的需求规格说明和测试需求列表,验证产品是否符合需求规格说明。

【协议一致性测试】

主要用于分布式系统。在分布式系统中,很多功能的实现是通过多台计算机相互协作来完成的,这要求计算机之间能相互交换信息,所以需要制定一些规则(协议)。对协议进行测试,通常包括:

协议一致性测试

协议性能测试

协议互操作性测试

协议健壮性测试。

【性能测试】

主要用于实时系统和嵌入式系统,性能测试是指测试软件在集成系统中的运行性能,目标是量度系统的性能和预先定义的目标有多大差距

一种典型的性能测试是压力测试,当系统同时接收极大数量的用户和用户请求时,需要测量系统的应对能力。性能测试要有工具的支持,在某种情况下,测试人员必须自己开发专门的接口工具。

【压力测试】

又称强度测试,是在各种超负荷的情况下观察系统的运行情况的测试。

【容量测试】

在系统正常运行的范围内测试并确定系统能够处理的数据容量。容量测试是面向数据的,主要目的就是检测系统可以处理目标内确定的数据容量

【安全性测试】

要验证系统的保护机制是否抵御入侵者的攻击。保护测试是安全性测试中一种常见的测试,主要用于测试系统的信息保护机制。评价安全机制的性能与安全功能本身一样重要,其中安全性的性能主要包括:有效性、生存性、精确性、反应时间、吞吐量

【失效恢复测试】

验证系统从软件或者硬件失效中恢复的能力。失效恢复测试采用各种人为干预方式使软件出错,造成人为的系统失效,进而检测系统的恢复能力。如果恢复需要人为干预,则应考虑平均修复时间是否在限定的范围内

【备份测试】

备份测试是失效恢复测试的补充,目的是验证系统在软件或者硬件失效的实践中备份其数据的能力。

【GUI测试】

GUI测试与用户友好性测试和可操作性测试有重复,但GUI测试更关注对图形界面的测试。

GUI测试分为两个部分,一方面是界面实现与界面设计的情况要符合;另一方面是要确认界面能够正确处理事件

GUI测试设计测试用例一般要从以下4方面考虑:

划分界面元素,并根据界面的复杂性进行分层。通常把界面划分为三个层次,第一层是界面原子层;第二层是界面组合元素层;第三层是一个完整的窗口。

在不同的界面层次确定不同的测试策略。

进行测试数据分析,提取测试用例。

使用自动化测试工具进行脚本化工作。

【健壮性测试】

又称容错测试,用于测试系统在出故障时,是否能够自动恢复或者忽略故障继续运行。健壮性测试的一般方法是软件故障插入测试,在软件故障插入测试中,需要关注三个方面:目标系统、故障类型和插入故障的方法

【兼容性测试】

检验被测的应用系统对其他系统的兼容性。

【易用性测试】

与可操作性类似。检测用户在理解和使用系统方面是否方便。易用性测试是面向用户的系统测试,包括对被测系统的系统功能、系统发布、帮助文本和过程等的测试。最好在开发阶段就开始进行。

【安装测试】

安装测试验证成功安装系统的能力。

【文档测试】

主要是针对系统提交给用户的文档进行验证。文档测试的目标是验证用户文档的正确性并保证操作手册的过程能正常工作。

【在线帮助测试】

用于检验系统的实时在线帮助的可操作性和准确性。

【数据转换测试】

目标是验证已存在数据的转换并载入一个新的数据库是否有效。

 

六、系统测试的实施

系统测试实施分为确认测试、Alpha和Beta测试、验收测试、回归测试,下面我们来具体学习:

【确认测试】

又称有效性测试。其任务就是确认软件的有效性,即确认软件的功能和性能及其它特性是否与用户的要求一致。这一阶段要做的主要工作是进行功能测试和软件配置复审

【Alpha和Beta测试】

Alpha测试是用户在开发环境下进行的测试,也可以是产品供应商内部的用户在模拟实际操作环境下进行的测试。软件在一个自然设置状态下使用,开发者坐在用户旁边,随时记下错误情况和使用中的问题。这是在受控制环境下进行的测试。

Beta测试是由多个用户在一个或多个用户的实际使用环境下进行的测试。通常是在不受控制的环境下进行的测试,开发者通常不在现场。用户记录在测试过程中遇到的一切问题(真实的或想象的),并且定期把这些问题报告给开发者。

【验收测试】

是以用户为主的测试,软件开发人员和质量保证人员也应参加,由用户参加设计测试用例,使用用户界面输入测试数据,并分析测试的输出结果。

【回归测试】

 在软件变更之后,对软件重新进行的测试。其目标是检验对软件进行的修改是否正确,保证改动不会带来不可预料的行为或者另外的错误。

 

问题严重级别划分如下

致命问题——对应于系统的可用性。

严重问题——用于分析系统版本稳定性。

一般问题——用于评估测试效率。

提示问题——用于产品的完善性指标。

BugBear软件测试,专注于分享测试干货,在分享的过程中提升自己,欢迎关注,交流成长。

欢迎加入软件测试交流QQ群:1136224273

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。