免费智能真题库 > 历年试卷 > 网络工程师 > 2021年上半年 网络工程师 上午试卷 综合知识
  第9题      
  知识点:   软件测试步骤   恢复   兼容性   开发人员   可移植性   实际应用   维护   维护性   质量保证
  章/节:   系统开发基础知识       

 
软件的( )是以用户为主,包括软件开发人员质量保证人员都参加的测试,一般使用实际应用数据进行测试,除了测试软件功能和性能外,还对软件可移植性兼容性、可维护性、错误的恢复功能等进行确认。
 
 
  A.  单元测试
 
  B.  集成测试
 
  C.  系统测试
 
  D.  验收测试
 
 
 

 
  第3题    2021年下半年  
   47%
软件测试时,白盒测试不能发现()。
  第7题    2022年下半年  
   30%
在网络工程项目全流程中,项目测试的测试目标来自于()阶段。
  第2题    2020年下半年  
   29%
把模块按照系统设计说明书的要求组合起来进行测试,属于( )。
   知识点讲解    
   · 软件测试步骤    · 恢复    · 兼容性    · 开发人员    · 可移植性    · 实际应用    · 维护    · 维护性    · 质量保证
 
       软件测试步骤
        软件测试的步骤如下。
        (1)单元测试:其也称模块测试,主要发现编码和详细设计中产生的错误,通常采用白盒测试。放在编码阶段,由程序员自己来完成,检查它是否实现了详细设计说明书中规定的模块功能和算法。单元测试的测试计划是在详细设计阶段完成。
        (2)集成测试:其也称组装测试,对由各模块组装而成的程序进行测试,主要检查模块间的接口和通信。集成测试主要发现设计阶段产生的错误,通常采用黑盒测试或灰盒测试。集成的方式可分成非渐增式集成和渐增式集成。集成测试的测试计划是在概要设计阶段完成。
        (3)确认测试:检查软件的功能、性能及其他特征是否与用户的需求一致,它是以需求规格说明书(即需求规约)作为依据的测试。确认测试通常采用黑盒测试,其测试计划是在需求分析阶段完成。
        (4)系统测试:把已经过确认的软件纳入实际运行环境中,与其他系统成分组合在一起进行测试。主要内容包括恢复测试、安全测试、强度测试、性能测试、可靠性测试、安装测试等。
 
       恢复
        数据恢复有3个步骤。
        (1)反向扫描文件日志,查找该事务的更新操作。
        (2)对事务的更新操作执行逆操作。
        (3)继续反向扫描日志文件,查找该事务的其他更新操作,并做同样的处理,直到事务的开始标志。
 
       兼容性
        兼容性是指一个系统的硬件或软件与另一个系统或多种操作系统的硬件或软件的兼容能力,是指系统间某些方面具有的并存性,即两个系统之间存在一定程度的通用性。兼容是一个广泛的概念,包括数据和文件的兼容、程序和语言级的兼容、系统程序的兼容、设备的兼容,以及向上兼容和向后兼容等。
        除了上述性能指标之外,还有其他性能指标,如综合性能指标如吞吐率、利用率;定性指标,如保密性、可扩充性;功能特性指标,如文字处理能力、联机事务处理能力、I/O总线特性、网络特性等。
 
       开发人员
        ①多媒体软件:项目负责人、学科教学专家、教学设计专家、软件工程师、多媒体素材制作专家和多媒体课件制作专家。
        ②多媒体电子出版物:策划编导、文字编辑、美术编辑、音乐编辑和多媒体编辑。
 
       可移植性
        可移植性是指软件产品从一种环境迁移到另外一种环境的能力。
               适应性
               适应性是指软件产品无需采用有别于为考虑该软件的目的而准备的活动或手段,就可能适应不同的指定环境的能力。
               易安装性
               易安装性是指软件产品在指定环境中被安装的能力。
               共存性
               共存性是指软件产品在公共环境中同与其分享公共资源的其他独立软件共存的能力。
               易替换性
               易替换性是指软件产品在环境相同、目的相同的情况下替代另一个指定软件产品的能力。
               可移植性依从性
               可移植性依从性是指软件产品依附于同可移植性相关的标准或约定的能力。
 
       实际应用
        在考试时,可能会出现一些需要综合应用的问题,需要考生根据基本的概念,结合实际问题进行解答。
        例如,在某并发系统中,有一个发送进程A、一个接收进程B、一个环形缓冲区BUFFER、信号量S1S2。发送进程不断地产生消息并写入缓冲区BUFFER,接收进程不断地从缓冲区BUFFER取消息。假设发送进程和接收进程可以并发地执行,那么,当缓冲区的容量为N时,如何使用PV操作才能保证系统能够正常工作。发送进程A和接收进程B的工作流程如下图所示。请在下图中的①~④处填写正确的操作。
        
        PV操作实例一
        根据题意,很显然,这是一个“生产者-消费者”问题,根据该问题的特性,通常需要3个信号量来实现:两个用来管理缓冲区同步,信号量empty表示空闲缓冲区数量,初值为缓冲区最大数N,信号量full表示已填充缓冲区数量,初值为0;一个用于管理互斥,由信号量mutex保证只有一个进程在写缓冲区,初值为1。但在本题中,进程A和进程B允许并发地访问缓冲区,因此无须管理互斥,就不需要使用信号量mutex了。因此只需定义两个信号量:S1S2,初值为NS1在此承担的是信号量empty的功能,初值为0的S2在此则承担的是信号量full的功能。
        通过这样的分析,不难得出结论:①处应该是P(S1),将空闲缓冲区数量减1;②处应该是V(S2),将已填充的缓冲区数量加1;③处则是P(S2);④处为V(S1)。
        在这个例子的基础上,如果系统中有多个发送进程和接收进程,进程间的工作流程如下图所示,其中空①~④的内容与上图相同。发送进程产生消息并顺序地写入环形缓冲区BUFFER,接收者进程顺序地从BUFFER中取消息,且每条消息只能读取一次。为了保证进程间的正确通信,增加了信息量SASB。请说明信息量SA和SB的物理意义,在下图中的⑤和⑥处填入正确的内容,并从下图的~①中选择4个位置正确地插入P(SA)、V(SA)、P(SB)和V(SB)。
        
        PV操作实例二
        上图所涉及的问题在普通的“生产者-消费者”问题上增加了一些复杂度:“系统中有多个发送进程和接收进程”,根据题意,我们可以得知它要完成的控制是:发送进程顺序写入,接收进程顺序读取,而且每条消息都只能够读取一次。这显然是两个互斥的问题,即多个发送进程在写缓冲区时是互斥关系,多个接收进程读缓冲区也是互斥关系。因此,信号量SASB分别实现这两个用来完成两个进程的互斥控制。
        (1)SA:初值为1,表示允许同时对缓冲区进行写操作的进程数量。
        (2)SB:初值为1,表示允许同时对缓冲区进行读操作的进程数量。
        当然,两个对调也是可以的。在发送进程和接收进程中分别有一组信号量SASB的PV操作。因此,接下来的问题就是找插入点。互斥控制的要点在于判断出临界区的范围,也就是哪部分程序必须互斥进入,否则将出现问题。根据这一点,可以进行如下分析。
        (1)发送进程:在进程产生消息之后准备写入缓冲区时,这时就需要进行互斥判断,因此在位置应插入P(SA);而直到完成“i=(i+1)mod N”操作后,才完成缓冲区操作,因此必须在位置插入V(SA)。
        (2)接收进程:由于接收进程是负责读数据的,如果数据区是空的则应该等待,因此必须先完成P(S2)操作,来决定其是否需要阻塞。如果没有阻塞时,再进入临界区,因此应该在位置处操作P(SB);而“对读取的消息进行处理”已显然在临界区之外,因此应该在位置插入V(SB)。
 
       维护
        维护阶段是软件生存期中时间最长的阶段。软件一旦交付正式投入运行后便进入软件维护阶段。该阶段的关键任务是通过各种必要的维护活动使系统持久地满足用户的需要。每一项维护活动都应该准确地记录下来,作为正式的文档资料加以保存。
 
       维护性
        维护性是指软件产品可被修改的能力。修改可能包括修正、改进或软件适应环境、需求和功能规格说明中的变化。
               易分析性
               易分析性是指软件产品诊断软件中的缺陷或失效原因,以及判定待修改的部分的能力。
               易改变性
               易改变性是指软件产品使指定的修改可以被实现的能力。
               稳定性
               稳定性是指软件产品避免由于软件修改而造成意外结果的能力。
               易测试性
               易测试性是指软件产品使已修改软件能被确认的能力。
               维护性依从性
               维护性依从性是指软件产品依附于同维护性相关的标准或约定的能力。
 
       质量保证
        系统质量是指反映系统或产品满足规定或隐含需求的能力的特征和特性全体。软件质量管理是指对软件开发过程进行的独立的检查活动,由质量保证、质量规划和质量控制三个主要活动构成。质量保证是指为保证系统或软件产品充分满足用户要求的质量而进行的有计划、有组织的活动,其目的是开发高质量的系统。
               质量特性
               讨论系统质量首先要了解系统的质量特性。已经有多种软件质量模型来描述软件质量特性,目前较多采用的如ISO/IEC 9126软件质量模型和Mc Call软件质量模型。ISO/IEC 9126已经被ISO/ICE 25010系统和软件质量模型所取代,其主要改进包括将兼容性作和安全性作为质量特性,ISO/IEC 25012数据质量模型与ISO/IEC 25030使用质量模型作为补充。
                      ISO/ICE 25010系统和软件质量模型
                      ISO/ICE 25010系统和软件质量模型包含8个质量特性,每个特性由一组相关的质量子特性组成,如下图所示。该产品质量模型既可以用于软件,又可以用于任何包含软件的计算机系统。
                      
                      产品质量模型
                      其中,各质量特性和质量子特性的含义如下。
                      (1)功能适合性(functional suitability)。与一组功能及其指定的性质的存在有关的一组属性。功能是指满足规定或隐含需求的那些功能。
                      .功能完整性(functional completeness):与对规定任务和用户目标加以实现的功能是否完整有关的属性。
                      .功能适当性(functional appropriateness):与对规定任务和用户目标能否提供一组功能以及这组功能是否适合有关的属性。
                      .功能正确性(functional correctness):与能够得到正确或相符的结果或效果有关的产品或系统属性。
                      (2)性能效率(performance efficiency)。在规定条件下,系统的性能水平与所用资源量之间的关系有关的一组属性。
                      .时间特性(time behavior):与响应和处理时间以及软件执行其功能时的吞吐量有关的属性。
                      .资源利用率(resource utilization):与系统执行其功能时所使用的资源量以及使用资源的类型有关的属性。
                      .容量(capacity):与系统满足特定需求时指标参数的最大限制有关的属性。
                      (3)兼容性(compatibility)。与系统或组件与其他系统或组件进行信息交换,或在不同软硬件环境中执行所需功能有关的一组属性。
                      .共存性(co-existence):与同其他系统运行在同一环境使用相同的资源而不相互影响的能力相关的属性。
                      .互操作性(interoperability):与同其他指定系统进行交互操作的能力相关的属性。
                      (4)易用性(usability)。与为使用所需的努力和由一组规定或隐含的用户对这样使用所作的个别评价有关的一组属性。
                      .可识别性(appropriateness recognizability):与用户识别系统是否满足需求有关的属性。
                      .易学性(learnability):与用户为学习使用产品(例如操作控制、输入、输出)的有效性、效率、风险和满意度相关的属性。
                      .易操作性(operability):与用户为进行操作和操作控制所付出的努力有关的属性。
                      .错误防御(user error protection):与阻止用户错误输入有关的属性。
                      .界面美观性(user interface aesthetics):与系统用户界面使用户进行愉快满意交互有关的属性。
                      .可访问性(accessibility):与用户可访问系统完成特定目标的范围和能力有关的属性。
                      (5)可靠性(reliability)。与在规定的一段时间内和规定的条件下,系统维持在其性能水平有关的能力。
                      .成熟性(maturity):与正常操作情况下满足可靠性需求有关的属性。
                      .可用性(availability):与系统运行可用使用能力有关的属性。
                      .容错性(fault tolerance):与在系统错误或违反指定接口的情况下,维持指定的性能水平的能力有关的属性。
                      .易恢复性(recoverability):与在故障发生后,重新建立其性能水平并恢复直接受影响数据的能力,以及为达到此目的所需的时间和努力有关的属性。
                      (6)安全性(security)。与避免对程序及数据的非授权故意或意外访问的能力有关的系统属性。
                      .机密性(confidentiality):与系统确保只有授权才能访问其数据能力有关的属性。
                      .完整性(integrity):与系统防止未经授权对数据和程序进行访问和修改能力有关的属性。
                      .不可抵赖性(non-repudiation):与对系统使用行为及发生时间真实性有关的属性。
                      .可审计性(accountability):与对系统使用行为进行追踪有关的属性。
                      .真实性(authenticity):与证明主体或资源身份是所声称的身份有关的属性。
                      (7)可维护性(maintainability)。与进行规定的修改所需要的努力有关的一组属性。
                      .模块性(modularity):与所组成系统的模块独立性有关的属性。
                      .可复用性(reusability):与模块用于其他系统有关的属性。
                      .易分析性(analyzability):与为诊断缺陷或失效原因,或为判定待修改的部分所需努力有关的属性。
                      .易修改性(modifiability):与进行修改、排错或适应环境变换所需努力有关的属性。
                      .易测试性(testability):为确认经修改系统所需努力有关的属性。
                      (8)可移植性(portability)。与系统可从某一环境转移到另一环境的能力有关的一组属性。
                      .适应性(adaptability):与系统转移到不同环境时的处理或手段有关的属性。
                      .易安装性(installability):与在指定环境下对系统进行安装/卸载所需努力有关的属性。
                      .易替换性(replaceability):与一产品在该软件环境中用来替代指定的其他软件的可能和努力有关的属性。
                      Mc Call软件质量模型
                      Mc Call软件质量模型从软件产品的运行、修正、转移三个方面确定了11个质量特性,如下图所示。Mc Call也给出了一个三层模型框架,第一层是质量特性,第二层是评价准则,第三层是度量指标。
                      
                      Mc Call软件质量模型
               质量保证
               质量保证是指为保证系统或产品充分满足用户要求的质量而进行的有计划、有组织的活动,其目的是生产高质量的产品。在系统质量方面强调三个要点:首先系统必须满足用户规定的需求,与用户需求不一致的系统,就无质量可言;其次系统应遵循规定标准所定义的一系列开发准则,不遵循这些准则的系统,其质量难以得到保证;最后系统还应满足某些隐含的需求,例如希望有好的可理解性、可维护性等,而这些隐含的需求可能未被明确地写在用户规定的需求中,如果系统只满足它的显性需求而不满足其隐含需求,那么该系统的质量是令人担忧的。
               质量保证包括7个主要活动相关的各种任务,分别是应用技术方法、进行正式的技术评审、测试系统、标准的实施、控制变更、度量(metrics)、记录保存和报告。
   题号导航      2021年上半年 网络工程师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第9题    在手机中做本题