正确答案:
题目:在设计测试用例时,__(1)__是用得最多的一种黑盒测试方法。在黑盒测试方法中,等价类划分方法设计测试用例的步骤如下所述。①根据输入条件把数目极多的输入数据划分成若干个有效等价类和若干个无效等价类。②设计一个测试用例,使其覆盖__(2)__尚未被覆盖的有效等价类,重复这一步,直至所有的有效等价类均被覆盖。③设计一个测试用例,使其覆盖__(3)__尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类均被覆盖。因果图法是根据__(4)__之间的因果关系来设计测试用例的。在实际应用中,一旦纠正了程序中的错误后,还应该选择部分或者全部原先已经测试过的测试用例,对修改后的程序进行重新测试,这种测试称为__(5)__。
解析:等价类划分是一种黑盒测试方法,将程序的输入域划分为数据类,以便导出测试用例。理想的测试用例是独自发现一类错误。等价类划分试图定义一个测试用例以发 现各类错误,从而减少必须开发的测试用例数。根据已划分的等价类表,应该按照以下步骤确定测试用例。首先,设计一个测试用例,使其尽可能多地覆盖尚未覆盖 的有效等价类,重复这一步,使得所有有效等价类都被测试用例所覆盖。然后,设计一个新的测试用例,使其只覆盖一个无效等价类,重复这一步使所有无效等价类 都被覆盖。应当注意到一次只能覆盖一个无效等价类。因为在一个测试用例中如果含有多个错误,有可能在测试中只发现其中的一个,另一些被忽视。因果图法是根 据输入与输出之间的因果关系来设计测试用例的,要检查输入条件的各种组合情况,在设计测试用例时,须分析规格说明中哪些是原因,哪些是结果,并指出原因和 结果之间、原因和原因之间的对应关系。纠正了程序中的错误之后,选择部分或者全部原先已经通过测试的用例,对修改后的程序进行重新测试以验证对软件修改后 有没有引入新的错误,称为回归测试。
查看原题 查看所有试题
学习资料的答案和解析:
[单选题]软件开发的螺旋模型综合了瀑布模型和演化模型的优点,还增加了__(1)__。采用螺旋模型时,软件开发沿着螺线自内向外旋转,每转一圈都要对__(2)__进行识别和分析,并采取相应的对策。螺旋线的第1圈的开始点可能是一个__(3)__。从第2圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,直到软件生命周期的结束。
解析:螺旋模型最早是由Boehm提出的,是一个演化软件过程模型,它将原型的迭代特征与线性顺序模型中控制的和系统化的方面结合起来,使得软件的增量版本的快 速开发成为可能。螺旋模型被划分为若干个框架活动,也成为任务区域。随着演化过程的开始,软件工程项目按顺时针方向沿着螺旋移动,从核心开始。螺旋的第1 圈可能产生产品的规格说明;再外层的螺旋可能用于开发一个原型;随后可能是软件的更完善的版本。每一圈都可以对项目计划进行调整,基于从用户处得到的评估 结果和反馈来调整开发的设计和进度。对于大型系统以及软件的开发者来说,螺旋模型是一个很现实的方法。因为软件随着过程的进展演化,开发者和用户能够更好 地理解和对待每一个演化级别上的风险。螺旋模型使用原型作为降低风险的机制,但更重要的是它使开发者在产品演化的任一阶段均可应用原型方法。它保持了传统 生命周期模型中系统性、阶段性的方法,但将其并入了迭代框架,更加真实地反映了现实世界。螺旋模型要求在项目的所有阶段直接考虑技术风险,如果应用得当, 能够在风险变成问题之前降低它的危害。
[单选题]在设计完成以后,实现阶段的初期确定算法是解决问题的关键步骤之一。算法的计算工作量的大小和实现算法所需要的存储空间的多少,分别称为计算的__(1)__和__(2)__。编写程序的时候,__(3)__和__(4)__是应采纳的原则之一。__(5)__是调试程序的主要工作之一。
解析:通常用来衡量算法的复杂度的标准有两个,是时间复杂度和空间复杂度。时间复杂度就是指完成该算法所要花费的工作量或者说运行的时间数量级;空间复杂度是指 算法所要使用的变量的存储空间花费为多大。编写程序实现算法的时候,程序的结构化十分重要,包括对程序进行分模块处理。在实现中应该尽量使用有意义的变量 名,这样对于变量的用途可以使用变量名来显现,有助于维护的时候重读代码时对于变量的理解。调试程序与测试相似,是不能用来证明程序一定是无错的,只能尽 可能多的找出错误,修改错误。
[单选题]用来辅助软件维护过程中的活动的软件称为软件维护工具。其中,用来存储、更新、恢复和管理软件版本的工具称为__(1)__工具:用来对在软件开发过程中形成的文档进行分析的工具称为__(2)__工具:用来维护软件项目开发信息的工具称为__(3)__工具;用来辅助软件人员进行逆向工程活动的工具称为__(4)__工具;用来支持重构一个功能和性能更为完善的软件系统的工具称为__(5)__工具。
[单选题]在编制程序的时候,应该采纳的原则之一是__(1)__。开发软件时对提高开发人员工作效率至关重要的是__(2)__。软件工程中描述生命周期的瀑布模型一般包括计划、__(3)__、设计、编码、测试、维护等几个阶段,其中设计阶段通常又可以依次分为__(4)__和__(5)__两步。
[单选题]设计高质量的软件是软件设计追求的一个重要目标。可移植性、可维护性、可靠性、效率、可理解性和可使用性等都是评价软件质量的重要方面。可移植性是指将一个原先在某种特定的硬件或软件环境下正常运行的软件移植到另一个硬件或软件的环境下,使得该软件也能正确运行的难易程度。为了提高软件的可移植性,应注意提高软件的__(1)__。可维护性通常包括__(2)__。通常认为,软件维护工作包括正确性维护、__(3)__维护和__(4)__维护。其中__(5)__维护则是为了扩充软件的功能或者提高原有软件的性能而进行的维护活动。__(6)__是指当系统万一遇到未预料的情况时,能够按照预定的方式来作合适的处理。
[单选题]软件测试在软件生命周期中横跨两个阶段,单元测试通常在__(1)__阶段完成。单元测试主要采用__(2)__技术,一般由__(3)__完成。测试一个模块时需要为该模块编写一个驱动模块和若干个__(4)__。渐增式集成是将单元测试和集成测试合并到一起,__(5)__集成测试中不必编写驱动模块。