【系统分析师之路】 第八章 复盘软件测试与维护(测试与过程改进)
复盘软件测试与维护—测试与过程改进
【系统分析师之路】 第八章 复盘软件测试与维护(测试与过程改进)前言部分 历年真题考点分析1)考点分析2)重要知识点第一部分 综合知识历年真题下综合知识历年真题(1分)上综合知识历年真题(4分)上综合知识历年真题(2分)上综合知识历年真题(1分)上综合知识历年真题(2分)上综合知识历年真题(1分)第二部分 案例分析历年真题下案例分析历年真题(25分)第三部分 论文写作历年真题上论文写作历年真题(75分)上论文写作历年真题(75分)上论文写作历年真题(75分)上论文写作历年真题(75分)上论文写作历年真题(75分)前言部分 历年真题考点分析
1)考点分析
软件测试与维护章节当中,考查测试占了相当大的比例,而且测试往往以论文的形式出现的考试中。出现的频率高。而在案例分析中,考查测试的还没有出现过在系统分析师当中。在上午选择题中,考查测试的分值一般都在2分,但在近几年的考查中,测试在上午综合知识中考察的分值慢慢就没有了。而软件过程改进相关的考查,除了有一年的论文之外,基本只考查上综合知识,且考查的分值只有一分。
2)重要知识点
1.功能测试的主要方法
2.自动化测试的主要内容
3.如何选择适合的自动化测试工具
4.自动化测试的优点与缺点
5.测试管理的主要活动内容
6.性能测试的目的和基本类型
7.功能测试的目的和基本类型
8.系统测试的主要活动及其所包含的主要内容
9.黑盒,白盒灰盒测试的概念
10.缺陷排除效率的基本概念
11.确认测试包含的内容
12.CMMI的五个阶段
13.黑盒测试的常用方法
14.Web系统测试具体内容
第一部分 综合知识历年真题
下综合知识历年真题(1分)
【下系分真题第24题:绿色】
24.用边界值分析法,假定10=X=30,那么X在测试中应取的边界值是(32)。
(32)
A.X=11,X=29
B.X=9,X=10,X=30,X=31
C.X=10,X=30
D.X=9,X=31
解答:答案选择B。
边界值分析是一种黑盒测试技术,是等价类划分的一种补充。
边界值分析是指将每个等价类的各边界作为测试目标,使得测试数据等于、刚刚小于或刚大于等价类的边界值
上综合知识历年真题(4分)
【上系分真题第16题:绿色】
16.用于管理活动和工程活动的软件过程已经文档化、标准化,并与整个组织的软件过程相集成。所有项目都使用文档化的、组织认可的过程来开发和维护软件。”满足这样描述的软件开发过程符合能力成熟度模型(CMM)中的(19)级。
(19)
A.可重复
B.定义
C.管理
D.优化
解答:答案选择B。二周目绿色变红色。
SEI的模型提供了衡量一个公司软件工程实践的整体有效性的方法,且建立了5级的过程成熟度(CMM)级别,其定义如下。
第一级:初始级—软件过程的特征是无序的,有时甚至是混乱的。几乎没有过程定义,成功完全取决于个人的能力。
第二级:可重复级—建立了基本的项目管理过程,能够追踪费用、进度和功能。有适当的、必要的过程规范,使得可以重现以前类似项目的成功。
第三级:定义级—用于管理和工程活动的软件过程己经文档化、标准化,并与整个组织的软件过程相集成。所有项目都使用文档化的、组织认可的过程来开发和维护软件。本级包含了第二级的所有特征。
第四级:管理级—软件过程和产品质量的详细度量数据被收集,通过这些度量数据,软件过程和产品能够被定量地理解和控制。本级包含了第三级的所有特征。
第五级:优化级—通过定量的反馈,进行不断的过程改进,这些反馈来自于过程或通过测试新的想法和技术而得到。本级包含了第四级的所有特征。
SEI定义的这五个级别是根据SEI基于CMM的评估调查表得到的反馈而产生的结果。
调查表的结果被精确化而得到单个的数字等级,表示了一个组织的过程成熟度。
【上系分真题第17题:绿色】
17.缺陷排除效率(DRE)是对软件质量保证及控制活动过滤能力的一个测量。假设某个软件在交付给最终用户之前发生的错误数量为45,软件交付之后发现的缺陷数为15,那么对应的DRE值为(20)。
(20)
A.0.75
B.1.3
C.0.5
D.0.25
解答:答案选择A。
缺陷排除效率在项目级和过程级都能提供有益的质量度量。
本质上,DRE是对质量保证及控制活动的过滤能力的一个测量,这些活动贯穿于整个过程框架活动。
当把一个项目作为一个整体来考虑时,DRE按如下方式定义:
DRE=E/(E+D)
其中:E—软件交付给最终用户之前所发现的错误数;
D—软件交付之后所发现的缺陷数。
本题中,E=45.D=15,因此DRE = 45/( 45+15)= 0.75。
【上系分真题第18题:绿色】
18.复用应该是每个软件过程都不可缺少的部分。下列制品,不属于复用候选的软件制品是(21)。
(21)
A.项目计划
B.体系结构
C.用户界面
D.用户需求
解答:答案选择D。送分题。
复用应该是每个软件过程的一个不可缺少的部分。
我们定义可作为复用候选的10种软件制品:项目计划、成本估计、体系结构、需求模型和规约、设计、源代码、用户和技术文档、用户界面、数据和测试用例。
而每个项目的用户需求都是不同的,难以复用。因此本题应该选用户需求
【上系分真题第26题:绿色】
26.黑盒测试注重于测试软件的功能性需求,主要用于软件的后期测试。(30)不能用黑盒测试检查出来。
(30)
A.功能不对或遗漏错误
B.界面错误
C.外部数据库访问错误
D.程序控制结构错误
解答:答案选择D。送分题。
黑盒测试注重于测试软件的功能性需求,即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件。
黑盒测试并不是白盒测试的替代品,而是用于辅助白盒测试发现其他类型的错误。
黑盒测试试图发现以下类型的错误。
(1)功能不对或遗漏。
(2)界面错误。
(3)数据结构或外部数据库访问错误。
(4)性能错误。
(5)初始化和终止错误。
白盒测试在测试的早期执行,而黑盒测试主要用于测试的后期。黑盒测试故意不考虑控制结构,而是注意信息域。
上综合知识历年真题(2分)
【系分真题第三题:红色】
03.面向对象系统的单元测试包括方法层次的测试、类层次的测试和类树层次的测试。在常见的测试技术中,(4)属于方法层次的测试,(5)属于类层次的测试。
(4)
A.等价类划分测试和多态消息测试
B.不变式边界测试和递归函数测试
C.组合功能测试和非模态类测试
D.不变式边界测试和模态类测试
(5)
A.等价类划分测试和多态消息测试
B.不变式边界测试和递归函数测试
C.组合功能测试和非模态类测试
D.不变式边界测试和模态类测试
解答:答案选择A|D。二周目黄色变红色。
面向对象系统的单元测试包括方法层次的测试、类层次的测试和类树层次的测试。
方法层次的测试类似于传统软件测试中对单个函数的测试,常用的测试技术包括等价类划分测试、组合功能测试、递归函数测试和多态消息测试等。
类层次的测试主要包括不变式边界测试、模态类测试和非模态类测试。
类树层次的测试主要包括多态服务测试和展平测试
上综合知识历年真题(1分)
【系分真题第21题:绿色】
21.软件产品的 Alpha 测试和 Beta 测试属于(32)。
(32)
A.回归测试
B.性能测试
C.集成测试
D.确认测试
解答:答案选择D。
确认测试包括:内部确认测试以及Alpha测试与Beta测试。
上综合知识历年真题(2分)
【上系分真题第23题:黄色】
23.美国著名的卡内基梅隆大学软件工程学研究所针对软件工程的工程管理能力与水平进行了充分研究,提出了5级管理能力的模式,包括临时凑合阶段、简单模仿阶段、完成定义阶段、()和( )。
(38)
A.细化定义阶段
B.标准化阶段
C.管理阶段
D.规格化阶段
(39)
A.细化定义阶段
B.管理阶段
C.最佳化阶段
D.规格化阶段
解答:答案选择C|C。第一空错。SEI的5级管理能力模式如下:
临时凑合阶段
工作无正式计划,作业进度经常被更改,任务计划、预算、功能、质量都不可预测, 开发机构的整体组织非常混乱。系统的性能、水平依个人能力而定。
简单模仿阶段
开发方开始采用基本的项目管理方法与原理;项目从规划到运行都有明确的计划; 这些计划是通过模仿以前成功的项目开发的例子制定的,有可能通过模仿在本次开发中成功。
完成定义阶段
与项目有关的整体机构的作业进度规格化、标准化,由此达到持续稳定的技术水平 与管理能力。这种工程进度管理能力要求把与开发项目有关的活动、作用和责任充分告知所有的开发者, 并使之充分理解。
管理阶段
这是理想的项目管理阶段。表现在开发者的工程管理能力不断强化,通过可靠的组织与 计划保障,能及早发现可能影响系统功能与性能的缺陷,使系统的性能与可靠性不断改进与提高。
佳化阶段
这一阶段是理想的项目管理阶段。其特点表现在开发者的工程管理能力不断强化,通 过可靠的组织与计划保障,能及早发现项目中可能影响系统功能与性能的缺陷,系统的关键指标在工程的 实施过程中得到全面保证与提高
上综合知识历年真题(1分)
【系分真题第25题:绿色】
25、软件能力成熟度模型提供了一个软件能力成熟度的框架,它将软件过程改进的步骤组织成5个成熟度等级。其中,软件过程已建立了基本的项目管理过程,可用于对成本、进度和功能特性进行跟踪,说明软件已达到( )成熟度等级。
A、已定义级
B、优化级
C、已管理级
D、可重复级
解答:答案选择D。考察软件过程改进的知识。送分题。
1.CMM的目的是帮助组织对软件过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预 算地开发出高质量的软件。CMM 的五个成熟度等级分别为初始级、可重复级、已定义级、已管理级和优化级。
2. 初始级
初始级是未加定义的随意过程,软件过程的特点是无秩序的,有时甚至是混乱的。软 件过程定义几乎处于无章法和步骤可循的状态,软件产品所取得的成功往往依赖于极个别人的努力和机 遇。
3. 可重复级
可重复级是规则化和纪律化的过程,软件过程已建立了基本的项目管理过程,可用 于对成本、进度和功能特性进行跟踪。对类似的应用项目,有章可循并能重复以往所取得的成功。
4. 已定义级
已定义级是标准的和一致的过程,用于管理的和工程的软件过程均已文档化、标准化,并形成了整个软件组织的标准软件过程。全部项目均采用与实际情况相吻合的、适当修改后的标准 软件过程来进行操作。
5. 已管理级
已管理级是可预测的过程,软件过程和产品质量有详细的度量标准。软件过程和产 品质量得到了定量的认识和控制。
6. 优化级
优化级是持续改进的过程,通过对来自过程、新概念和新技术等方面的各种有用信息 的定量分析,能够不断地、持续性地对过程进行改进
第二部分 案例分析历年真题
下案例分析历年真题(25分)
下高项案例分析历年真题
阅读下列说明,回答问题1至4,将解答填入题纸的对应栏里。
【说明】
A公司是提供SaaS平台服务业务的公司,小张作为研发流程优化经理,他抽查了核心产品的配置管理和测试过程,情况如下:项目组共10人,产品经理小马兼任项目经理和配置管理员,还有7名开发工程师和2名测试工程师,采用敏捷的开发方式,2周为一个迭代周期,目前刚刚完成一个3.01版本的上线。
小张要求看一下配置管理库,小马回复:“我正忙着,让测试工程师王工给你看吧,我们10个都有管理权限”。小张看到配置库分为了开发库和产品库,产品库包括上线的3 个大板块的完整代码和文档资料,而且与实际运行版本有偏差。小版本只能在开发库中找到代码,但没有相关文档,而且因为新需迭代太快,有些很细微的修改,开发人员随手进行了修改,文档和代码存在一些偏差。
小张策划对产品做一次3.01版本的系统测试,以便更好的解决研发流程和系统本身的问题。
【问题1】(5分)
结合本案例,从配置管理的角度指出项目实施过程中存在的问题。
【问题2】(10分)
结合本案例,请帮助测试工程师从测试目的、测试对象、测试内容、测试过程、测试用例设计依据,测试技术6个方面设计核心产品3.01版本的系统测试方案。
【问题3】(6分)
如果系统测试中需要采用黑盒测试,白盒测试和灰盒测试,请阐述三种测试的含义和用途。
【问题4】(4分)
从候选答案中选出正确选项,将该选项编号填入答题纸对应栏内。
配置项的状态通常可分为三种,配置项初建时其状态为(1) 。配置项通过评审后,其状态变为(2) 。此后若更改配置项,则其状态变为(3) 。当配置项修改完毕并重新通过评审时,其状态友变为(4) 。
A.送审稿 B. 草稿 C. 报批稿
D.征求意见 E. 修改 F. 正式
【问题1标准答案】
1、没有制订规范的配置管理计划
2、没有安排专职的配置管理员
3、没有建立起合理的配置管理系统
4、没有做好配置标识
5、没有做好配置控制。
6、没有做好配置状态报告
7、没有做好配置审计
8、没有做好发布管理和交付
9、没有配置管理变更管理流程
【问题2标准答案】
测试目的:发现软件错误
测试对象:3.01测试系统
测试内容:源代码和文档
测试过程:测试计划-测试施行-发布测试结果
测试用例设计依据:用户需求
测试技术:白盒、黑盒,灰盒
【问题3标准答案】
黑盒测试
也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
白盒测试
又称结构测试,白盒测试可以把程序看成装在一个透明的白盒子里,也就是清楚了解程序结构和处理过程,检查是否所有的结构及路径都是正确的,检查软件内部动作是否按照设计说明书的规定正常进行。其目的是通过检查软件内部的逻辑结构,对软件中逻辑路径进行覆盖的测试,可以覆盖全部代码、分支、路径和条件。
灰盒测试
介于白盒测试与黑盒测试之间的测试。灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不像白盒测试详细、完整,只是通过一些表征的现象、事件、标志来判断内部的运行状态。灰盒测试是基于程序运行时的外部表现同时又结合程序内部逻辑结构来设计用例,执行程序并采集程序路径执行信息和外部用户接口结果的测试技术。
【问题4标准答案】
配置项的状态通常可分为三种,配置项初建时其状态为(B草稿),配置项通过评审后,其状态变为(F正式) 。此后若更改配置项,则其状态变为(E修改) 。当配置项修改完毕并重新通过评审时,其状态变为(F正式)
第三部分 论文写作历年真题
上论文写作历年真题(75分)
试题三 论Web系统的测试技术及其应用
随着网络技术的广泛应用,许多传统的信息系统已经逐渐被移植到互联网上,Web系统已经对日常的工作和生活产生了深远的影响。为了保证Web系统的正确性,在系统开发阶段就要对其进行全面的测试、确认和验收,而且由于Web系统具有与传统信息系统截然不同的特点,需要采用针对Web系统特点的测试技术与方法。
请围绕“Web系统的测试技术及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与实施的Web系统开发项目以及你所担任的主要工作。
2.阐述主要针对哪几个方面进行Web系统测试,并对每个方面的具体测试内容进行详细论述。
3.阐述在进行Web系统的测试时遇到了哪些问题,如何解决
Web系统测试包括:
1.功能测试,包括:
(1)链接测试
链接测试可分为三个方面。首先,测试所有链接是否按指示链接到正确的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立页面。链接测试可以自动进行,现在已经有许多工具可以采用。
(2)表单测试
当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登录、信息提交等。在这种情况下,必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。如果使用默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。
(3)Cookies测试
如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响,等等。
(4)设计语言测试
Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了HTML的版本问题外,不同的脚本语言,例如Java、Javascript、ActiveX、VBscript或Perl等也要进行验证。
(5)数据库测试
在Web应用中,最常用的数据库类型是关系型数据库。在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误往往是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试
2.性能测试包括:
(1)连接速度测试
由于用户连接到Web用系统的速度差异较大,需要对Web系统响应时间进行测试;另外,需要对页面响应速度和超时设置进行测试;最后,需要考虑由于连接速度太慢而引起的数据丢失。
(2)负载测试
负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。
(3)压力测试
压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。压力测试的区域包括表单、登录和其他信息传输页面等。
3.可用性测试包括:
(1)导航测试
导航测试需要考虑导航是否直观,Web系统的主要部分是否可通过主页存取,Web系统是否需要站点地图、搜索引擎或其他的导航帮助等导航可用性问题。Web系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。
(2)图形测试
图形测试的内容有:验证图形用途,减少传输时间与传输量;验证所有页面字体的风格是否一致;验证背景颜色是否与字体颜色和前景颜色相搭配;检查图片的大小和质量,等等。
(3)内容测试
主要检验Web应用系统提供信息的正确性、准确性和相关性。
(4)整体界面测试
考察整个Web系统的页面结构设计,是否给用户的一个整体感。
对所有的可用性测试来说,都需要有外部人员的参与,最好是最终用户的参与。
4.客户端兼容性测试,包括:
(1)平台测试。需要在各种操作系统下对Web系统进行兼容性测试。
(2)浏览器测试。测试不同厂商、不同版本的浏览器对某些构件和设置的适应性
5.安全性测试包括:
(1)用户名、密码测试
必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登录而直接浏览某个页面等。
(2)超时测试
测试Web系统是否有超时的限制。
(3)日志信息测试
需要测试相关信息是否写进了日志文件、是否可追踪。
4.客户端兼容性测试包括:
(1)平台测试。需要在各种操作系统下对Web系统进行兼容性测试。
(2)浏览器测试。测试不同厂商、不同版本的浏览器对某些构件和设置的适应性
5.安全性测试包括:
(1)用户名、密码测试。
必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登录而直接浏览某个页面等。
(2)超时测试。
测试Web系统是否有超时的限制。
(3)日志信息测试。
需要测试相关信息是否写进了日志文件、是否可追踪。
(4)安全套接字测试。
当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。
(5)服务器端脚本问题。
服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要就没有经过授权,就不能在服务器端放置和编辑脚本的问题进行测试。
上论文写作历年真题(75分)
试题二 论软件系统测试及其应用
软件系统测试是将已经确认的软件与计算机硬件、外设、网络等其他设施结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,进而完善软件。系统洌试的主要内容包括功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、安装与反安装测试等,其中,最重要的是功能测试和性能测试。功能测试主要采用黑盒测试方法。
请围绕“软件系统测试及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。
2.详细论述软件系统测试中功能测试的主要方法,自动化测试的主要内容和如何选择适合的自动化测试工具。
3.结合你具体参与管理和开发的实际项目,说明你是如何采用软件系统测试方法进行系统测试的,说明具体实施过程以及应用效果
功能测试最主要的方法就是黑盒测试。
黑盒测试又叫做基于系统规格说明的测试,它是指那些使用规格说明方法和准则的测试活动,根据程序需求和产品规格来说明发现的错误。
黑盒测试根据软件需求说明书所规定的功能来设计测试用例,一般包括功能分解,等价类划分,边界值分析,判定表,因果图,状态图,随机测试,错误推测,正交试验法。
测试自动化是一个通过编程完成测试的过程,一旦测试实现了自动化,大量的测试用例就可以迅速的运行;
自动化测试通常需要构建存放程序软件包和测试软件包的文件服务器,存储测试用例,测试结果的数据库服务器,执行测试的运行环境,控制服务器,Web服务器和客户端程序。
自动化工具的选择需要考虑以下几点:
1)测试工具应该具有相应的容错处理系统,可以自动处理一些异常情况;
2)能够提供类似软件集成开发环境中的调试功能,支持脚本的运行,设置断点,得到变量返回结果等;
3)可以更加有效的对测试脚本进行跟踪,检查并迅速的定位问题。
4)测试脚本的开发需要支持团队的开发环境,测试工具对脚本代码能够很好的控制和管理。
测试工具主要有单元测试工具、负载和性能测试工具、GUI功能测试工具和基于Web应用的测试工具等
单元测试工具
单元测试工具主要包括C/C++测试工具(例如,Panorama C++和C++ Test等)、Java开源测试框架JUnit、内存资源泄漏检查工具(例如,Numega的BounceChecker和Rational的Purify等)、代码覆盖率检查工具(例如,Numega的TrueCoverage、Rational的PureCoverage和TeleLogic的LogiScope等)、代码性能检查工具(例如,LogiScope的Macabe等)和软件纠错工具(例如,Rational Purl等)
负载和性能测试工具
负载和性能测试工具是软件测试中作用最大的工具,可以完成一些难以用手工实现的测试,常用工具包括Mercury Interactive的LoadRunner和Compuware的QALoad,以及IBM Rational的SQA Load、Performance和Visual Quality
GUI功能测试
GUI功能测试工具主要用于回归测试,主要工具包括Mercury Interactive的WinRunner和Compuware的QARun,以及IBM Rational的SQA Robot和Microsoft的Visual Test Suite等。
基于Web应用的测试工具
基于Web应用的测试工具主要进行链接检查、HTML检查、Web功能和安全性等方面的测试。主要的测试工具包括MI公司的Astra系列和RSW公司的E-TestSuite,以及WorkBench、Web Application Stress(WAS)Tool和Link Sleuth等
上论文写作历年真题(75分)
试题二 论软件的系统测试及其应用
软件测试是软件交付客户前必须要完成的重要步骤之一,目前仍是发现软件错误(缺陷)的主要手段。系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,针对整个系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。系统测试的主要内容包括功能性测试、健壮性测试、性能测试、用户界面测试、安全性测试、安装与反安装测试等。
请围绕“软件的系统测试及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。
2.详细论述软件的系统测试的主要活动及其所包含的主要内容,并说明功能性测试和性能测试的主要的目的。
3.结合你具体参与管理和开发的实际项目,概要叙述如何采用软件的系统测试方法进行系统测试,说明具体实施过程以及应用效果。
功能测试的目的很简单,测试系统是否达到了用户明确提出的需求及隐含需求。
性能测试的目的是验证软件系统是否能够达到用户提出的性能指标,同时发现软件系统中存在的性能瓶颈,并优化软件,最后起到优化系统的目的。
系统测试的对象是完整的集成的计算机系统,系统测试的目的是在真实环境下,验证完整的软件配置项能否和系统正确连接,并满足系统/子系统设计文档和软件开发合同规定的要求。
系统测试的技术依据是用户需求或开发合同,除应满足一般测试的准入条件外,在进行系统测试前,还应该确认被测系统的所有配置项已通过测试,对需要固化运行的软件还应提供固件。
一般来说系统测试主要包括了功能测试,健壮性测试,性能测试,用户界面测试,安全性测试,安装与反安装测试等,其中最重要的工作是进行功能测试和性能测试。
上论文写作历年真题(75分)
试题四 论软件的系统测试及其应用
软件系统测试的对象是完整的、集成后的计算机系统,其目的是在真实系统工作环境下,验证完整的软件配置项能否和系统正确连接,并满足系统设计文档和软件开发合同规定的要求。常见的系统测试包括功能测试、性能测试、压力测试、安全测试等。同时,在系统测试中,涉及到众多的软件模块和相关干系人,测试的组织和管理是系统测试成功的重要保证。
请围绕"软件的系统测试及其应用"论题,依次从以下三个方面进行论述。
1.简要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。
2.概要论述系统测试过程中测试管理的主要活动内容,论述性能测试的目的和基本类型。
3.结合你具体参与管理和开发的实际项目,说明如何管理性能测试的各项活动,以及性能测试具体采用的方法、工具、实施过程以及应用效果
性能测试主要用来验证软件系统在承担一定的负载的情况下,所表现出来的特征是否符合客户的需要.
性能测试的目的是验证软件系统是否能够达到用户提出的性能指标;
同时发现软件系统中存在的性能瓶颈,并优化软件,最后起到优化系统的目的。
性能测试包括以下四个方面:
1)发现缺陷
软件的某些缺陷与软件性能密切相关,针对这些缺陷的测试,一般需要伴随着性能测试进行。
2)性能调优
与调试不同,性能调优并不一定针对发现的性能缺陷,也可能是为了更好的发挥系统的潜能。
3)评估系统的能力
软件性能测试不仅需要测试软件在规定条件下是否满足性能需求
往往还需要测试能够满足性能需求的条件极限。
4)验证稳定性和可靠性
在一定负载下测试一定的时间,是评估系统稳定性和可靠性是否满足要求的唯一方法。
功能测试主要采用黑盒测试的方法,而性能测试主要用来验证软件系统在承担一定的负载的情况下,所表现出来的特征是否符合客户的需要,主要的指标有响应时间和吞吐量,并发用户数和资源利用率等。
测试管理定义:
对每项具体软件测试活动以及总体软件测试全局的监督、评估、决策和管理的过程。
软件测试的管理就是对每一种具体测试任务、流程、体系、结果、工具等进行具体监督和管理。
测试管理目标:
软件测试管理的目标是通过系统的、高效的、适用的技术、方法和体系来监督、促进和达到这个软件测试的目标。
比较常见把软件测试管理分为8类:
需求管理,质量管理,团队管理,文档管理,缺陷管理,环境管理,流程管理,测试执行管理和其它(计划、用例、报告、成本、风险)
上论文写作历年真题(75分)
试题二:论系统自动化测试及其应用
软件系统测试是在将软件交付给客户之前所必须完成的重要步骤之一,目前,软件测试仍是发现软件缺陷的主要手段。软件系统测试的对象是完整的、集成的计算机系统,系统测试的目的是验证完整的软件配置项能否和系统正确连接,并满足系统设计文档和软件开发合同规定的要求。系统测试工作任务难度高,工作量大,存在大量的重复性工作,因此自动化测试曰益成为当前软件系统测试的主要手段。
问题内容:
请围绕“系统自动化测试及其应用”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。
2.详细论述系统自动化测试的主要工作内容及优缺点。
3.结合你具体参与管理和开发的实际项目,说明是如何进行系统自动化测试的,说明具体实施过程以及应用效果
1)概念
是一个通过编程完成测试的过程。一旦实现了测试自动化,大量的测试用例可以得到迅速执行。
2)包括内容
自动化测试的主要实现方法包括了代码的静态与动态分析,测试过程的捕获与回放,测试脚本技术,虚拟用户技术和测试管理技术等。
3)优点
1.提高工作效率
2.提高测试执行的速度
3.保证测试结果的准确性
4.连续运行测试脚本
5.模拟现实环境中受到约束的情况
4)缺点
1.自动化测试不能取代手动测试;
2.自动化测试能够发现的缺陷不如手工测试
3.自动化测试对所测产品质量约束大,不能提高有效性,可能会制约软件开发,以及测试工具不具备想象力
5)测试用例的生成
当前流行的自动化测试工具主要使用脚本技术来生成测试用例。脚本是一组测试执行的指令的集合,其作用是通过回放的方式来模拟手工测试所执行的操作。
6)自动化测试工具
目前自动化测试工具主要有:单元测试工具,负载和性能测试工具,GUI功能测试工具,基于Web应用的测试工具。其他的测试工具还包括了缺陷跟踪工具,综合测试管理工具,嵌入式测试工具,数据库测试工具等。
7)适用领域
对于产品单一,或者是开发周期长的项目,我们更加倾向于自己开发测试工具,无论是从节省成本还是从企业长远发展考虑,这都是有利的。
如果觉得《【系统分析师之路】 第八章 复盘软件测试与维护(测试与过程改进)》对你有帮助,请点赞、收藏,并留下你的观点哦!