免费智能真题库 > 历年试卷 > 信息系统项目管理师 > 2019年上半年 信息系统项目管理师 上午试卷 综合知识
  第62题      
  知识点:   软件设计、测试与维护   测试执行   系统测试
  关键词:   系统测试   测试        章/节:   信息系统及其技术和开发方法       

 
( )属于系统测试执行过程中的工作效率指标。
 
 
  A.  进度偏离度
 
  B.  需求覆盖率
 
  C.  评审问题数
 
  D.  有效缺陷率
 
 
 

 
  第7题    2015年上半年  
   41%
MVC是模型-视图-控制器架构模式的缩写,以下关于MVC的叙述中,()是不正确的。
  第27题    2017年上半年  
   49%
面向对象的软件开发过程是用例驱动的,用例是UML的重要部分,用例之间存在着一定的关系,下图表示的是用例之间的()关系。
  第48题    2009年上半年  
   37%
软件质量强调三个方面的内容:(48)是测试软件质量的基础;(49)定义了一组用于指导软件开发方式的准则;(50)间接定义了用户..
   知识点讲解    
   · 软件设计、测试与维护    · 测试执行    · 系统测试
 
       软件设计、测试与维护
        软件设计
        软件设计是“定义一个系统或组件的架构、组件、接口和其他特征的过程”,并得到“这个过程的结果”。
        软件设计由两个处于软件需求和软件构造之间的活动组成:
        .软件架构设计(也叫概要设计):描述软件的结构和组织,标识各种不同的组件。
        .软件详细设计:详细地描述各个组件,使之能被构造。
        软件测试
        测试是为评价和改进产品质量、识别产品的缺陷和问题而进行的活动。
        软件测试是针对一个程序的行为,在有限测试用例集合上动态验证是否达到预期的行为。
        软件测试过程如下:
        (1)拟定测试计划。
        (2)编制测试大纲。
        (3)设计和生成测试用例。
        (4)实施测试。
        (5)生成测试报告。
        软件测试方法:
        .人工测试:采用人工方式进行测试,目的是通过对程序静态结构的检查,找出编译时不能发现的错误。包括个人复查、抽查、会审。
        .机器测试:把设计好的测试用例作用于被测程序,比较测试结果和预期结果是否一致。包括黑盒测试(功能测试)和白盒测试(结构测试)。
        软件测试的三个阶段:
        .单元测试:也称为模块测试,在模块编写完成且无编译错误后就可以进行。
        .集成测试:也称为组装测试,就是把模块按系统设计说明书的要求组合起来进行测试。
        .系统测试:是将已经确认的软件、计算机硬件、外设和网络等其他因素结合在一起,进行信息系统的各种组装和确认测试,其目的是通过与系统需求相比较,发现所开发的系统与用户需求不符合矛盾的地方。
        软件维护
        软件维护可定义为需要提供软件支持的全部活动。这些活动包括在交付前完成的活动以及交付后完成的活动。交付前完成的活动包括交付后的运行计划和维护计划等。交付后的活动包括软件修改、培训、帮助资料等。
        软件维护的类型有纠错性维护、适应性维护、完善性维护和预防性维护。
 
       测试执行
               运行场景
               运行场景时,会为Vuser组分配负载生成器并执行它们的Vuser脚本。在场景执行期间,将要完成以下工作:
               . 记录在Vuser脚本中定义的事务的持续时间;
               . 执行包括在Vuser脚本中的集合;
               . 收集Vuser生成的错误、警告和通知消息。
               可以在无人干预的情况下运行整个场景,或者可以交互地选择要运行的Vuser组和Vuser。场景开始运行时,Controller会首先检查场景配置信息。接着,它将调用已选定与该场景一起运行的应用程序。然后,它会将每个Vuser脚本分配给其指定的负载生成器。Vuser组就绪后,它们将开始执行其脚本。
               在场景运行时,可以监视每个Vuser,查看由Vuser生成的错误、警告和通知消息以及停止Vuser组和各个Vuser。可以允许单个Vuser或组中的Vuser在停止前完成它们正在运行的迭代,在停止前完成它们正在运行的操作或者立即停止运行,还可以在场景运行时激活其他Vuser。在下面情况下,场景将结束:所有Vuser已完成其脚本、持续时间用完或者终止场景。以下过程概述如何运行场景。
               . 打开现有场景或新建一个场景;
               . 配置并计划场景;
               . 设置结果目录;
               . 运行并监视场景。
               在执行期间查看Vuser
               可以在场景执行期间查看Vuser的活动:
               . 在Controller负载生成器计算机中,可以查看输出窗口,联机监视Vuser性能以及查看执行场景的Vuser的状态;.在远程计算机中,可以查看包含活动Vuser的有关信息的代理摘要。
               监视场景
               工具一般提供下列联机监视器:
               . “运行时”监视器显示参与场景的Vuser的数目和状态,以及Vuser所生成的错误数量和类型。此外还提供用户定义的数据点图,其中显示Vuser脚本中的用户定义点的实时值。
               . “事务”监视器显示场景执行期间的事务速率和响应时间。
               . “Web资源”监视器用于度量场景运行期间Web服务器上的统计信息。它提供关于场景运行期间的Web连接、吞吐量、HTTP响应、服务器重试和下载页的数据。
               . “系统资源”监视器测量场景运行期间使用的Windows、UNIX、TUXEDO、SNMP和Antara FlameThrower资源。要激活系统资源监视器,必须在运行场景之前设置监视器选项。
               . “网络延迟”监视器显示关于系统上的网络延迟的信息。要激活网络延迟监视器,必须在运行场景之前设置要监视的网络路径。
               . “防火墙”监视器用于度量场景运行期间防火墙服务器上的统计信息。要激活防火墙监视器,必须在运行场景之前设置要监视的资源列表。
               . “Web服务器资源”监视器用于度量场景运行期间Apache、Microsoft IIS、iPlanet(SNMP)和iPlanet/Netscape Web服务器上的统计信息。要激活该监视器,必须在运行场景之前设置要监视的资源列表。
               . “Web应用程序服务器资源”监视器用于度量场景运行期间Web应用程序服务器上的统计信息。要激活该监视器,必须在运行场景之前设置要监视的资源列表。
               . “数据库服务器资源”监视器用于度量与SQL Server、Oracle、Sybase和DB2数据库有关的统计信息。要激活该监视器,必须在运行场景之前设置要监视的度量列表。
               . “流媒体”监视器用于度量Windows Media服务器、RealPlayer音频/视频服务器及RealPlayer客户端上的统计信息。要激活该监视器,必须在运行场景之前设置要监视的资源列表。
               . “ERP/CRM服务器资源”监视器用于度量场景运行期间SAP R/3系统服务器、SAP Portal、Siebel Web服务器和Siebel Server Manager服务器的统计信息。要激活该监视器,必须在运行场景之前设置要监视的资源列表。
               . “Java性能”监视器用于度量Java 2 Platform, Enterprise Edition(J2EE)对象及使用J2EE和EJB服务器计算机的Enterprise Java Bean(EJB)对象的统计信息。要激活该监视器,必须在运行场景之前设置要监视的资源列表。
               . “应用程序部署解决场景”监视器用于度量场景运行期间Citrix MetaFrame XP和1.8服务器的统计信息。要激活该监视器,必须在运行场景之前设置监视器选项。
               . “中间件性能”监视器用于度量场景运行期间TUXEDO和IBM WebSphere MQ服务器上的统计信息。要激活该监视器,必须在运行场景之前设置要监视的资源列表。
               . 所有的监视器所收集的数据都可以生成该监视器的图。
               有些工具也提供远程性能监控。
               在负载测试运行过程中,远程性能监视器可以查看特定的图,这些图显示Vuser在服务器上生成的负载的信息。用户在连接到Web服务器的Web浏览器上查看负载测试数据。如下图所示为利用远程性能监视器查看负载测试数据。
               
               利用远程性能监视器查看负载测试数据
               远程性能监视器服务器包含一个用ASP页实现的网站,以及一个包含负载测试图的文件服务器。它与Controller联机组件进行交互,并按相应的许可证处理同时查看负载测试的用户数。
 
       系统测试
        系统测试将软件与整个系统的硬件、外设、支持软件、数据和人员等结合起来,以需求规格说明为依据,在实际运行环境下进行测试。系统测试过程分为计划与准备、执行、返工与回归测试3个阶段,系统测试一般要完成功能测试、性能测试、恢复测试、安全测试、强度测试以及其他限制条件的测试。
        系统测试由独立测试小组在测试组长的监督下进行,测试组长主要负责保证在质量控制和监督下使用测试技术执行系统测试。系统测试过程由一个独立的测试观察员来监控测试工作。
               负载测试
               负载测试是通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。负载测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,负载测试还要评估性能特征,例如,响应时间、事务处理速率和其他与时间相关的方面。
               负载测试的加载方式通常有如下几种。
               (1)一次性加载。一次性加载某个数量的用户,在预定的时间段内持续运行。例如,在早晨上班的时间访问网站或登录网站的时间非常集中,基本属于扁平负载模式。
               (2)递增加载。有规律地逐渐增加用户,每几秒增加一些新用户,交错上升。借助这种负载方式的测试,容易发现性能的拐点,即性能瓶颈。
               (3)高低突变加载。某个时间用户数量很大,突然降到很低,过一段时间,又突然加到很高,反复几次。借助这种负载方式的测试,容易发现资源释放和内存泄露等问题。
               (4)随机加载方式。由随机算法自动生成某个数量范围内变化的、动态的负载,这种方式可能是和实际情况最为接近的一种负载方式。虽然不容易模拟系统运行出现的瞬时高峰期,但可以模拟系统长时间的运行过程的状态。
               压力测试
               压力测试又称为强度测试,是在强负载(加大数据量、大量并发用户等)下的测试,用于查看应用系统在峰值使用情况下的操作行为,目的是发现系统的功能隐患、系统是否具有良好的容错能力和可恢复能力。压力测试分为高负载下的长时间(如24小时以上)的稳定性压力测试和极限负载情况下导致系统崩溃的破坏性压力测试。
               微软测试实践经验表明,如果软件产品通过72小时压力测试,则在72小时后出现问题的可能性微乎其微。所以,72小时成为微软产品压力测试的时间标志。
               负载测试与压力测试是两个很容易混淆的概念。负载测试是通过逐步增加系统负载,测试其变化,看最后在满足性能的情况下,系统最多能接受多大负载的测试。压力测试是在满足性能的情况下,能使系统处于失效的状态,通俗来说,就是发现在什么条件下,系统的性能会变得不可接受。
               压力测试的一般步骤如下:
               ①进行简单多任务测试。
               ②简单压力缺陷修正后,增加系统的压力直到系统崩溃。
               因此,负载压力测试的主要目的是度量应用系统的性能和扩展性。在实施并发负载过程中,通过实时性能监测来确认和查找问题,并针对所发现的问题对系统性能进行优化。负载压力测试工具能够对整个企业架构进行测试,通过这些测试,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
               可靠性测试
               软件可靠性是软件质量的一个重要标志。美国电气和电子工程师协会(IEEE)将软件可靠性定义为:系统在特定的环境下,在给定的时间内无故障地运行的概率。软件可靠性涉及软件的性能、功能、可用性、可服务性、可安装性,以及可维护性等多方面特性,是对软件在设计、生产以及在它所预定环境中具有所需功能的置信度的一个度量。
               可靠性测试一般伴随着强壮性测试,是评估软件在运行时的可靠性,通过测试确认平均无故障时间(Mean Time to Failure,MTTF)、故障发生前平均工作时间(Mean-Time-To-First-Failure,MTTFF)或因故障而停机的时间(Mean Time To Repairs,MTTR)在一年中应不超过多少时间。可靠性测试强调随机输入,并通过模拟系统实现,很难通过实际系统的运行来实现。
               安全性测试
               安全性测试是测试系统在应付非授权的内部/外部访问、非法侵入或故意的损坏时的系统防护能力,检验系统有能力使可能存在的内/外部的伤害或损害的风险限制在可接受的水平内。可靠性通常包括安全性,但是软件的可靠性不能完全取代软件的安全性。安全性还涉及到数据加密、保密和存取权限等多个方面。
               安全性测试需要设计一些测试用例试图突破系统的安全保密措施,检验系统是否有安全保密漏洞,验证系统的保护机制是否能够在实际中不受到非法的侵入。在安全测试过程中,测试者扮演成试图攻击系统的角色,尝试获取系统密码,利用能够瓦解任何防守的客户软件攻击系统;或者把系统“制服”,使别人无法访问。
               安全性测试是要检验在系统中已经存在的系统安全性、保密性措施是否发挥作用,有无漏洞。破坏系统保护机构的主要方法有以下几种:
               (1)正面攻击或从侧面、背面攻击系统中易受损坏的那些部分。
               (2)以系统输入为突破口,利用输入的容错性进行正面攻击。
               (3)申请和占用过多的资源压垮系统,以破坏安全措施,从而进入系统。
               (4)故意使系统出错,利用系统恢复的过程,窃取用户口令及其他有用的信息。
               (5)通过浏览残留在计算机各种资源中的垃圾(无用信息),以获取如口令、安全码和译码关键字等信息。
               (6)浏览全局数据,期望从中找到进入系统的关键字。
               (7)浏览那些逻辑上不存在,但物理上还存在的各种记录和资料等。
               一般情况下,网络软件的安全评估包括以下情况;
               (1)检验和测试网络软件中涉及数据传输各部分的配量对安全的影响。
               (2)会话跟踪是否足够。
               (3)是否正确使用了加密技术。
               (4)变量限制的设定。
               (5)在服务器端执行程序中的安全漏洞。
               (6)HTML源码中是否有敏感的信息或没有必须出现的信息。
               兼容性/配置测试
               兼容性/配置测试用于测试软件与先前发布过的版本、有依赖关系的外部软件、运行的系统的各种版本和硬件平台的不同配置的兼容情况。
               可以从如下几个方面进行兼容性测试。
               (1)检查版本是否兼容。检查新版本操作习惯与老版本是否兼容,目的是使老版本的用户很快地适应新版本的变化。
               (2)检查数据格式是否兼容。数据格式有许多种形式,如文件格式、网络协议和共享数据等。例如,通信协议软件版本升级后,检查升级版本和老版本的通信协议是否一致等。
               (3)检查系统调用的兼容性。检查系统的哪些功能依赖于系统调用,是否属于某个平台或版本独有,是否在不同平台上有差异。
               (4)检查是否支持操作系统、数据库系统、硬件和软件平台。配置测试用例设计主要指软硬件环境配置的测试用例,检查计算机系统内各个设备或各种资源之间的相互关联和功能分配中的错误。
               容错性测试
               容错性测试是检查软件在异常条件下自身是否具有防护性措施或者灾难恢复手段。如当系统出错时,能否在指定时间间隔内修正错误并重新启动。可以把容错性测试看作是由系统异常处理测试和恢复测试组成的。
               可用性测试
               可用性是指系统正常运行的能力和用户接受的程度,一般用如下公式表示。
               可用性=平均正常工作时间/(平均正常工作时间+平均修复时间)
               影响可用性的因素有如下几个:
               (1)不充分的测试。
               (2)更改管理问题。
               (3)缺少在线监视和分析。
               (4)操作错误。
               (5)弱编码。
               (6)与外部服务或应用程序的交互。
               (7)不同的操作条件(使用级别更改、峰值重载)。
               (8)异常事件(安全性失败、广播风暴)。
               (9)硬件故障(硬盘、控制器、网络设备、服务器、电源、内存和CPU)。
               (10)环境问题(电源、冷却、火、洪水、灰尘、自然灾害)。
               下面给出提高系统可用性的一些办法。
               (1)使用集群。集群是指将至少两个系统连接到一起,像一个系统那样工作。当某一系统出现失效时,集群提供即时故障转移服务。
               (2)使用网络负载平衡。当检测某服务器失败后,网络负载平衡自动将通信量重新分发给仍然运行的服务器。
               (3)使用服务级别协议。可用性指标的期望服务级别要求达到4个或5个“9”。例如,“该应用程序应每周运行7天,每天24小时,年可用性为99.99%”是指全年不能正常工作的时间仅仅只有52分钟,不足1个小时。
               (4)提供实时的监视。监视系统的工作负荷和失败数据,实时监视对于发现趋势和改善服务至关重要。
               (5)使用数据备份,保证数据安全。
               (6)检查所有的安全计划。安全性是确保应用程序服务只对有权使用系统的用户可用,还意味着使得应用程序使用的所有分布式组件和资源受到保护。
               文档测试
               文档测试是指对软件开发、测试和维护过程中产生的所有文档的测试,包括对需求规格分析说明书、详细设计报告、系统设计报告、用户手册以及与系统相关的一切文档的审阅和评测。例如,系统需求分析和系统设计说明书中的错误将直接导致编码的错误,用户手册作为软件的一部分,将直接影响用户对系统的使用效果。
               文档测试强调文档的表述应该清楚、准确,主要包含:
               .正确地按照文档描述的方法使用系统。
               .测试每一个提示和建议信息。
               .使用文档作为测试用例的来源。
               .测试每一个在线帮助的超链接。
               .测试每条语句。
               .测试文档中提供的每一个样例。
               .把缺陷写入缺陷跟踪库。
               .检查所有的错误信息。
   题号导航      2019年上半年 信息系统项目管理师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第62题    在手机中做本题