软件测试技术---系统测试

简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1010885678/article/details/37922793 1...
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq1010885678/article/details/37922793

1,系统测试的概念


系统测试是最后的测试,用于评价系统是否符合系统需求规格说明的各项需求,是否达到要验收的标准

系统测试的主要目的不是找出缺陷,而是确认其功能,性能和其他要求的质量属性

系统测试就是将已经集成的软件系统作为整个计算机系统中的某个元素,与计算机硬件,外围设备等其他系统元素结合在一起,在实际运行环境下对计算机系统进行一系列集成和确认的测试,因此测试设计人员应该主要根据需求规格说明来设计测试用例



2.系统测试的方法


(1)功能测试

功能测试属于黑盒测试,是系统测试中要进行的最基本的测试,其要求测试人员对被测系统的需求规格说明,业务功能都要非常熟悉

因为需求说明书是功能测试的基本输入,因此要对需求说明书进行详细的分析


(2)协议一致性测试

该测试在分布式系统中比较常见

因为使用分布式系统的软件要运行在多个不同的计算机上

为了实现不同的计算机之间互相通信,这些计算机需要遵守一些协议

但是因为协议是自然语言规定的,每个人对其理解都有可能不一样

所以要对协议进行测试,以确保所开发的系统能够正常工作


(3)性能测试

该测试就是要检查软件在集成系统中的运行性能

混合了黑盒和白盒测试的方法

主要的目标是度量系统的性能与预先定义的目标有多大的差距

通常与压力测试一起进行


(4)压力测试

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

在该测试中,测试人员关注的主要是在有非正常资源占用的情况下系统的处理时间


(5)容量测试

该测试是在系统正常运行的范围内进行测试并确定系统能够处理的数据容量

容量测试是面向数据的,其目的是检查系统数据结构的设计是否能够最大限度的处理系统目标所期望的数据容量


(6)安全性测试

一个完善的系统应该具备低于非法或非正常途径的入侵者破坏系统正常工作活动的能力

安全性测试就是要验证系统内的保护机制能否抵御入侵者的攻击

在该测试中,测试人员需要模拟不同的入侵方式来攻击系统的安全机制,想尽一切办法来获取系统内的保密信息

只要有足够的事件和资源,好的安全性测试一定能够入侵一个系统


(7)失效恢复测试

很多基于计算机的系统在失效发生时必须能够在一定的时间内从失效中恢复过来,然后继续运行

也就是说,在运行过程中出错不能使得整个系统的功能都停止,而且一个系统的错误必须在一个特定的时间段内改正

失效恢复测试就是为了验证系统从软件或者硬件失效中恢复的能力

通过采取人工干预的方式使得软件出错进行测试


(8)备份测试

该测试是失效恢复测试的一个补充,并且应当是失效恢复测试的一个部分

验证系统在失效时间中备份其数据的能力


(9)GUI测试

GUI(Graphic User Interface)图形化用户界面

相当于软件产品的外观

GUI的好坏直接影响用户使用软件的效率和心情,为了让软件更好的服务用户,需要进行GUI测试

该测试分为两个部分:

一方面是界面的实现和界面设计是否相符

另一方面是要确认界面能够正确的处理事件


(10)健壮性测试

该测试又称为容错测试

用于测试系统出现故障时,是否能够自动回复或者忽略故障继续运行

这就要求设计人员在设计过程中要妥善的进行异常处理

一个好的软件必须在经过健壮性测试之后才能最终交付给用户


(11)兼容性测试

因为有时系统的出错是由于与其他系统不兼容而引起的

所以兼容性测试的目的就是眼见被测的软件系统对其他系统的兼容性


(12)可使用性测试

该测试是为了检验用户在使用和理解系统的时候是否方便

是面向用户的测试

和压力测试一样,可使用性测试最好在开发阶段就进行

如果所开发的系统不能被用户很好的使用,那么就要对系统进行重新设计


(13)安装测试

该测试是为了检验系统成功安装的能力

并且能够在安装过程中提供一些简单的,容易理解的信息来帮助用户完成安装过程


(14)文档测试

该测试主要是针对系统提交给用户的文档进行验证的

目的是验证用户文档是正确的并且保证操作手册的过程能够正确工作


(15)在线帮助测试

在线帮助给用户提供一种实时的资讯服务,一个完善的系统应该具备在线帮助的功能


(16)数据转换测试

在实际使用环境中,系统经常会遇到升级的情况

同时又要保证以前的数据不会丢失

这就需要进行数据转换测试





3.系统测试的实施


在完成集成测试之后

系统测试开始于集成软件的确认测试

确认测试包括功能测试和软件配置复查


在系统测试的过程中可能出现α测试和β测试

α测试是有一个用户在开发环境下进行的测试,由开发者陪同并记录下测试过程中出现的错误

β测试则是由多个软件用户在实际的使用环境中进行使用,然后将出现的错误返回给开发者,与α测试的主要不同是没有开发人员的陪同


在进行完确认测试之后就要进行验收测试,该测试是以用户为主的测试


进行完所有测试之后要对系统测试出现的问题进行总结和分析




4.做好系统测试的原则


(1)所有的测试都应追溯到用户需求

(2)在测试工作开始之前今早开始测试计划

(3)将Pareto原则应用与软件测试,Pareto原则表明测试发现的错误中80%的错误来源于程序模块中的20%,问题在与如何分离出这些可疑的模块进行彻底测试

(4)系统缺陷应记入文档中

相关文章
|
11天前
|
机器学习/深度学习 人工智能 监控
提升软件质量的关键路径:高效测试策略与实践在软件开发的宇宙中,每一行代码都如同星辰般璀璨,而将这些星辰编织成星系的过程,则依赖于严谨而高效的测试策略。本文将引领读者探索软件测试的奥秘,揭示如何通过精心设计的测试方案,不仅提升软件的性能与稳定性,还能加速产品上市的步伐,最终实现质量与效率的双重飞跃。
在软件工程的浩瀚星海中,测试不仅是发现缺陷的放大镜,更是保障软件质量的坚固防线。本文旨在探讨一种高效且创新的软件测试策略框架,它融合了传统方法的精髓与现代技术的突破,旨在为软件开发团队提供一套系统化、可执行性强的测试指引。我们将从测试规划的起点出发,沿着测试设计、执行、反馈再到持续优化的轨迹,逐步展开论述。每一步都强调实用性与前瞻性相结合,确保测试活动能够紧跟软件开发的步伐,及时适应变化,有效应对各种挑战。
|
11天前
|
测试技术 UED
软件测试的艺术:探索性测试的力量
【10月更文挑战第6天】在软件开发的世界中,测试是确保产品质量的关键步骤。传统的测试方法往往遵循严格的脚本和预定义的路径进行,但探索性测试(ET)则提供了一种更为灵活、创造性的替代方案。通过模拟真实用户的行为和思考过程,ET能够揭示那些传统测试可能遗漏的问题。本文将深入探讨探索性测试的核心原则、实施策略以及它如何提高软件测试的效率和有效性。
|
6天前
|
存储 监控 网络协议
服务器压力测试是一种评估系统在极端条件下的表现和稳定性的技术
【10月更文挑战第11天】服务器压力测试是一种评估系统在极端条件下的表现和稳定性的技术
62 32
|
12天前
|
测试技术
软件测试中的探索性测试(ET)实践
【10月更文挑战第5天】本文将深入探讨一种与传统脚本化测试不同的测试方法——探索性测试(Exploratory Testing,简称ET)。我们将通过一个实际案例来展示ET的有效性,并分享如何将ET融入日常的软件测试流程中。文章旨在为测试人员提供一种灵活、高效的测试策略,帮助他们更好地发现软件中的缺陷。
|
10天前
|
监控 数据可视化 测试技术
软件测试中的自动化测试实践指南
【10月更文挑战第7天】 在软件开发的生命周期中,测试是确保产品质量的重要环节。随着技术的进步和应用的复杂性增加,自动化测试逐渐成为提升测试效率和覆盖范围的关键手段。本文将深入探讨自动化测试的基本概念、实施步骤及其在不同应用场景中的最佳实践。通过对自动化测试框架的选择、脚本开发、执行及维护的详细解析,帮助读者更好地理解和应用自动化测试技术,从而优化测试流程,提高软件质量。
21 2
|
13天前
|
测试技术 UED
软件测试中的探索性测试:一种高效且灵活的测试方法
本文将深入探讨探索性测试的核心概念、优势及其在实际项目中的应用。我们将从探索性测试的基本定义入手,逐步解析其在不同场景下的具体实施方法和最佳实践。通过详细的案例分析和方法对比,帮助读者全面了解这种既高效又灵活的软件测试技术。
|
14天前
|
安全 测试技术 UED
软件测试的艺术:探索性测试的奥秘
【10月更文挑战第3天】在软件开发的海洋中,测试是指引安全航行的灯塔。本文将带您领略一种不同于传统测试方法的奥秘——探索性测试。我们将从其定义和重要性出发,通过实际案例深入探讨如何运用探索性测试来揭示软件中的隐藏缺陷,并分享一系列高效实用的测试技巧。让我们一起启航,探索软件测试的未知领域。
|
13天前
|
中间件 测试技术 持续交付
软件测试中的自动化测试实践指南
【10月更文挑战第4天】 本文探讨了软件测试中自动化测试的重要性,并详细介绍了如何有效实施自动化测试。从选择合适的工具到设计测试用例,再到实际执行与持续集成,我们将一步步引导读者了解自动化测试的全过程。通过具体案例分析,我们展示了自动化测试在提高测试效率、保障软件质量方面的显著优势。无论是初学者还是资深测试工程师,都能从中获得实用的指导和启示。
36 1
|
10天前
|
测试技术
软件测试的艺术:探索性测试的深度与广度
【10月更文挑战第7天】在软件开发的宇宙中,测试是一颗璀璨星辰,指引着质量的方向。本文将带你遨游于测试的海洋,深入探索性测试(Exploratory Testing)的奥秘,从其哲学本质到实践应用,揭示如何通过自由探索来发现软件中的隐藏缺陷。我们将一起思考如何在不断变化的软件环境中,利用探索性测试提高测试效率和效果,确保软件产品的质量。准备好,让我们启航吧!
|
12天前
|
测试技术 UED
软件测试中的探索性测试:一种创新的质量保证方法
在软件开发的生命周期中,测试阶段扮演着至关重要的角色。传统的软件测试方法,如自动化测试和回归测试,虽然在一定程度上保证了软件质量,但它们往往依赖于预定义的测试用例和脚本,可能无法覆盖所有用户场景和边缘情况。为了克服这些限制,探索性测试作为一种创新的质量保证方法应运而生。本文将深入探讨探索性测试的概念、优势以及如何有效地实施它,以帮助读者更好地理解和应用这种测试技术。

热门文章

最新文章