在某个长度(机器指令条数)为105的程序模块中随机地人为植入10个错误,然后由一个测试组进行测试,结果一共发现有160个错误,其中有两个是人为播种植入的错误。如果以上测试结果基于该测试过程中未引入新的错误,则可以估算出被测程序模块中将会遗留下(63)个未被发现的隐藏错误。A.168B.300C.632D.800

题目

在某个长度(机器指令条数)为105的程序模块中随机地人为植入10个错误,然后由一个测试组进行测试,结果一共发现有160个错误,其中有两个是人为播种植入的错误。如果以上测试结果基于该测试过程中未引入新的错误,则可以估算出被测程序模块中将会遗留下(63)个未被发现的隐藏错误。

A.168

B.300

C.632

D.800


相似考题
更多“在某个长度(机器指令条数)为105的程序模块中随机地人为植入10个错误,然后由一个测试组进行测试,结果一共发现有160个错误,其中有两个是人为播种植入的错误。如果以上测试结果基于该测试过程中未引入新的错误,则可以估算出被测程序模块中将会遗留下(63)个未被发现的隐藏错误。A.168B.300C.632D.800”相关问题
  • 第1题:

    关于软件测试的目的不正确的是()。

    A.从用户骄傲度看,通过软件测试暴露软件中隐藏的错误和缺陷

    B.从开发者看测试成为表明软件产品中不存在错误的过程

    C.一个成功的测试时为了发现至今未发现的错误的测试

    D.一个好的测试用例在于不能发现错误


    正确答案:D

  • 第2题:

    ( )是测试阶段的关键技术问题。

    A、设计测试用例

    B、执行被测程序

    C、分析执行结果

    D、发现结果的错误


    参考答案:A

  • 第3题:

    由A和B两组测试人员同时相互独立地测试同一个应用程序模块的两个拷贝。假设经过两周测试后, A组发现的错误总数为350个,B组发现的错误总数为320个,其中两个组发现的相同错误数目为132个。若这两周所发现的错误在全部错误中具有着代表性,则可估算出在测试前此程序原有(63)个错误。

    A.540

    B.670

    C.800

    D.850


    正确答案:D
    解析:若将A、B两个测试小组发现的错误数分别看成是两个“独立”事件,设N为应用程序模块中存在的故障总数,NA为A组检测到的错误数,P(A)为A组检测到的错误数在被测程序模块故障总数中发生的概率,NB为B组检测到的错误数,P(B)为B组检测到的错误数在被测程序模块故障总数中发生的概率,NAB为A、B两组发现的相同错误数,P(A∩B)为A、B两组发现的相同错误数发生的概率。根据事件A、B相互独立的充分必要条件P(A∩B)=P(A)P(B),即独立事件的Bayes概率计算公式得,由试题给出的数据可得,NA=350,NB=320,NAB=132,则可以估算出测试前此应用程序原有的错误数≈848.485个,取整数849个。独立测试方案的估算前提是:两组发现的不同错误数所占的比例相对是很低的;两周来发现的错误在全部错误中有着代表性。顺便指出由于目前所进行的仅仅是模块测试,即部件级测试,还没有考虑到集成测试和系统测试中会出现的程序错误数量,因此可以预知总的错误数必然是大于849个。

  • 第4题:

    程序测试的目的是()。

    A.为被测程序设计正确的测试用例

    B.发现并改正程序中的错误

    C.发现程序中的错误

    D.改正程序中的错误


    正确答案:C

  • 第5题:

    在软件测试阶段,如果某个测试人员认为程序出现错误,他应( )。

    A.首先要对错误结果进行确认
    B.立刻修改错误以保证程序的正确运行
    C.重新设计测试用例
    D.撰写错误分析报告

    答案:A
    解析:
    在软件测试阶段,如果某个测试人员认为程序出现错误,他应首先要对错误结果进行确认,然后再开展后续的工作。

  • 第6题:

    下面哪一个测试的错误将会为实施新的应用软件带来最大的风险()。

    • A、系统测试
    • B、验收测试
    • C、整合测试
    • D、单元测试

    正确答案:B

  • 第7题:

    在软件测试阶段,如果某个测试人员认为程序出现错误,他应()

    • A、首先要对错误结果进行确认
    • B、立刻修改错误以保证程序的正确运行
    • C、重新设计测试
    • D、撰写错误分析报告

    正确答案:A

  • 第8题:

    单元测试()

    • A、集中对用源代码实现的每一个程序模块进行测试
    • B、模块按系统设计说明书的要求组合起来进行测试
    • C、是将已经确认的软件、硬件、外设、网络等其他系统成分结合在一起,纳入实际运行环境中进行测试。
    • D、为了检测在安装过程中是否有错误、是否容易操作等

    正确答案:A

  • 第9题:

    召开审查会,在会中由小组成员阅读程序,以发现程序错误,同时测试员利用测试数据人工运行程序并得出输出结果,然后由参加者对结果进行审查,以达到测试的目的。这种测试方法为()。

    • A、人工走查
    • B、代码审查
    • C、软件审查
    • D、错误推测法

    正确答案:A

  • 第10题:

    关于软件测试的目的,下列说法中错误的是()。

    • A、测试是程序的运行过程,目的在于发现错误
    • B、一个好的测试用例在于能够发现至今未发现的错误
    • C、一个成功的测试是发现了至今未发现的错误的测试
    • D、测试的目标是以最少的时间和人力改正软件中潜在的各种错误和缺陷

    正确答案:D

  • 第11题:

    填空题
    对发现错误较多的程序模块,应进行()测试。

    正确答案: 重点
    解析: 暂无解析

  • 第12题:

    问答题
    在测试一个长度为24000条指令的程序时,第一个月由甲、乙两名测试员各自独立测试这个程序。经一个月测试后,甲发现并改正20个错误,使MTTF达到10h。与此同时,乙发现24个错误,其中6个甲也发现了。以后由甲一个人继续测试这个程序。问:为使MTTF达到60h,必须再改正多少个错误?还需多长测试时间?

    正确答案: 根据估算平均无故障时间的公式可得:
    1/K(80/24000-20/24000)=10
    1/K(80/24000- Ec/24000)=60
    计算可得:K=40,Ec=70
    即还需要改正50个错误。根据甲的改正进度,估计还需要3个月。
    解析: 暂无解析

  • 第13题:

    阅读以下关于网络应用系统可靠性分析方面的技术说明,根据要求回答问题1至问题4。

    【说明】

    可靠性是一个网络应用系统能正常工作的能力,一般用平均故障间隔时间(MTBF)来度量。某网络应用软件研发公司正在开发一个嵌入式实时应用软件——宽带路由器的NanOs程序,在编写软件维护与测试说明书时,涉及到如何定量地描述软件可靠性的问题。

    该项目负责人谢工程师认为软件可靠性指的是在将要使用的指定环境下,软件能以用户可接受的方式正确运行任务所表现出来的能力。从定量角度看,似乎应当是该软件在约定的环境条件下和在给定的时间区间内,按照软件规格说明的要求,成功地运行程序所规定功能的概率。但是,他感到要具体地做定量描述有些困难。

    为此,谢工程师查阅到了本部门某个软件需求规格说明书中有关的一条说明,即错误(BUG)可采用蒙特卡罗(Monte Carlo)随机植入技术进行测试。采用错误随机植入模型估算出被测程序模块中存在的错误数具有以下几个优点:

    (1)工作方式相当直观,能在一定程度上反映出软件的质量。

    (2)虽然在技术上不完善,但至少产生了与软件质量相关的定量结果。

    (3)在最坏的情况下,起码可用来衡量“测试工作的有效性”,在某种程度上作为测试是否能结束的一项标志。

    谢工程师首先想到了曾经学到过采用蒙特卡罗随机统计技术确定不规则形状封闭图形面积的方法,即采用一个大的矩形把待测的封闭图形完全包围在该大矩形的内部,由计算机大量生成在此矩形内均匀分布的“点”,然后计数在大矩形内总的“点”的个数和在封闭图形内的“点”的个数,可近似地得到以下计算表达式:

    于是谢工程师把这个思想应用于系统测试过程,先在某个长度(机器指令条数)为105的程序模块中随机地人为植入10个错误,然后由一个测试组进行测试,结果一共发现有160个错误,其中有2个是人为播种植入的错误,以上测试结果基于该测试过程中未引入新的错误。

    请用蒙特卡罗错误随机植入模型估算出被测程序模块中将会遗留下多少个未被发现的隐藏错误。请简要列出计算式子及计算过程。


    正确答案:设软件固有错误数为N人为植入错误数为NS测试中发现的固有错误数为M测试中发现的人为植入错误数为MS 被测程序模块中将会遗留下未被发现的隐藏错误数为 800-160-(10-2)=640-8=632个
    设软件固有错误数为N,人为植入错误数为NS,测试中发现的固有错误数为M,测试中发现的人为植入错误数为MS, 被测程序模块中将会遗留下未被发现的隐藏错误数为 800-160-(10-2)=640-8=632个 解析:这是一道要求读者掌握定量分析网络应用软件错误可靠性指标的计算题。本题的解答思路如下。
    1)根据题干中给出的信息可将错误随机植入模型定义成为估算某软件所含有固有错误的具体数目N,可在此软件中人为随机植入NS个错误数,然后进行比较软件的测试,如果通过测试发现了M个固有错误,其中发现的人为随机植入错误数有MS个。
    2)由题干关键信息“测试过程中未引入新的错误”,可以进一步假设人为随机植入NS个错误数后故障的出现概率等同于植入错误数之前故障的出现概率,即将程序模块单位长度故障率认为是一个常数。

    5)被测程序模块中将会遗留下未被发现的隐藏错误数为:
    800-160-(10-2)=640-8=632(个)
    6)另外说明一点,蒙特卡罗错误随机植入模型存在以下几个局限性:①由于所有错误不可能等概率出现,而且错误有着连带相关性(一个错误可能隐藏另一错误),因此要想使随机植入的错误有助于正确地推算出固有的错误数,如何有效地在程度模块中选择和植入这类错误相对比较困难;②在检测错误时,错误一般不会等概率地被发现,而目在修复错误时也经常会引出一些新的错误,可见很难用简单的公式获得很理想的估计值;③随机植入的错误本身会增加检测发现错误和修改错误的:工作量。

  • 第14题:

    以下关于软件测试目的的叙述中,不正确的是()。

    A、测试是程序的执行过程,目的在于发现错误

    B、一个好的测试用例在于能发现至今未发现的错误

    C、分析错误产生原因不便于软件过程改进

    D、通过对测试结果分析整理,可以修正软件开发规则


    正确答案:C

  • 第15题:

    根据初期测试结果的统计数据来推算整个软件故障总数和测试进度是一个行之有效的软件测试管理办法。如果将A、B两个测试小组发现的错误数分别看成是两个“独立”事件,且认为前5天测试的5个程序模块在NanOs程序中具有相当好的代表性的,请估算在正式进行测试前,NanOs程序所具有的软件错误总数。请将表8-7中(1)~(5)空缺处填写完整,每个空缺处均需列出主要计算式子。


    正确答案:
    解析:这是一道要求读者应用数学(逻辑或概率)知识估计软件代码错误总数的计算分析题,本题的主要解答思路如下。
    1)题目中已给出了关键信息“将A、B两个测试小组发现的错误数分别看成是两个独立事件”,设N为每个被测程序模块故障总数,NA为A组检测到的错误数,P(A)为A组检测到的错误数在被测程序模块故障总数中发生的概率,NB为B组检测到的错误数,P(B)为B组检测到的错误数在被测程序模块故障总数中发生的概率,NAB为A、B两组发现的相同错误数,P(A∩B)为A、B两组发现的相同错误数发生的概率。根据事件A、B相互独立的充分必要条件P(A∩B)=P(A)P(B),即独立事件的Bayes概率计算公式,得:

    2)根据以上计算公式,可将表8-6所提供的每个程序模块的统计数据以图8-20所示的思路进行理解,即表8-6中“两组检测相同的错误数”是指A、B两个测试小组独立发现的错误数的交集。因此可得出,每个被测程序模块故障总数N=(A组检测到的错误数NA×B组检测到的错误数NB)/A、B两组发现的相同错误数NAB。

    6)顺便指出,由于目前所进行的仅仅是模块测试,即部件级测试,还没有考虑到集成测试和系统测试中将必然会出现的NanOs程序错误数量。可以预知总的NanOs程序错误数必然是大于600个,这是相当高的错误率。

  • 第16题:

    阅读以下关于测试的叙述,回答问题1、问题2和问题3。

    某企业需要对自己开发的、代码规模为18480行的程序astroinfo进行测试,企业主管指定李工安排该测试工作。李工决定由甲、乙两个测试小组每天独立测试同一个程序模块,每个测试小组由程序设计人员和有关用户代表两类人员构成。甲、乙两个测试小组记录的相关测试情况如下:

    根据测试过程和结果数据,李工得到以下几条结论:

    (1)通过改正每天测试中两个小组发现的共同错误,可以按线性速度减少程序中的错误数;

    (2)按照这样的测试安排,测试小组的测试效率会得到提高,因此,进度会越来越快;

    (3)前4天的测试表明:由于每个测试小组都有用户代表参加,而用户代表可以协助设计测试用例,测试的质量可以得到保证:

    (4)由于测试用例的设计已适当考虑了故障的定位,目前已采用的设计方法是十分有效的。

    据此,李工向企业主管表示可以在10天内完成astroinfo程序的测试任务。

    如果前四天测试的astroinfo程序的四个模块是有代表性的,请估算在正式进行测试前,astroinfo程序所具有的软件错误总数。请你用250字以内文字简要说明这样汁算的依据。


    正确答案:在各模块中的错误总数为446个计算公式为: 错误总数=代码总行数/平均每一个错误所对应的代码行数 可以用ML/(N1*N2/N12)求出平均每一个错误所对应的代码行数。 其中ML为模块的行数N1、N2和N12分别为甲小组、乙小组和两组共同发现的错误数。用该公式对4天测试结果分别计算后可得到每个错误所对应的代码行数ML。 利用此公式可以得到4天的ML分别为40、39.5、44、42平均为41.4行/每个错误。最后以程序总长度/平均每一个错误所对应的代码行数得到18 480/41.4=446个错误。
    在各模块中的错误总数为446个,计算公式为: 错误总数=代码总行数/平均每一个错误所对应的代码行数 可以用ML/(N1*N2/N12)求出平均每一个错误所对应的代码行数。 其中ML为模块的行数,N1、N2和N12分别为甲小组、乙小组和两组共同发现的错误数。用该公式对4天测试结果分别计算后可得到每个错误所对应的代码行数ML。 利用此公式可以得到4天的ML分别为40、39.5、44、42,平均为41.4行/每个错误。最后以程序总长度/平均每一个错误所对应的代码行数得到18 480/41.4=446个错误。 解析:本题的主要内容在1993年系统分析员考试下午I试题中出现过。虽然寸‘几年过去了,在软件项目开发过程中,重视编码、重视设计而轻视测试的现象依然严重且普遍存在。许多软件开发单位没有专职的测试工程师,测试工作常常由开发人员完成,对测试的投入极少。由此,导致软件质量不高,软件公司信誉下降。
    软件测试是伴随着软件的产生而产生的,早期的软件测试含义比较狭窄,将测试等同于“调试”。
    随着软件工程实践和理论的不断发展,软件测试的定义也从“测试是为发现错误而执行的一个程序或者系统的过程”发展到“测试是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的量度”。
    软件测试过程一般按照4个步骤进行,即单元(模块)测试、集成(组装)测试、确认测试和系统测试。测试发现错误进行调试修改后,还要再次进行测试,这称为回归测试。
    测试定量分析方法包括独立测试法和植入错误测试法。这些分析方法存在一些局限性,比如独立测试法认为所有的错误被发现的概率是一样的,所有的错误对系统的影响是一样的,忽略错误的连锁效应(即认为错误的出现是独立的),忽略修正错误所带来的新问题等,过于理想化。
    第一步:总结出问题的要点。
    本题主要考查测试定量分析方法、测试内容、测试步骤和测试要求等。
    [问题1]
    应用数学(逻辑或概率)知识,估计代码错误总数。

  • 第17题:

    以下关于软件测试的叙述中,正确的是( )。

    A.软件测试不仅能表明软件中存在错误,也能说明软件中不存在错误
    B.软件测试活动应从编码阶段开始
    C.一个成功的测试能发现至今未发现的错误
    D.在一个被测程序段中,若已发现的错误越多,则残存的错误数越少

    答案:C
    解析:
    软件测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件产品(主要是指程序)中的错误和缺陷。软件测试是软件质量保证的主要手段之一。一个好的测试用例是极有可能发现至今为止尚未发现的错误的测试用例。一次成功的测试是发现了至今为止尚未发现的错误的测试。一个高效的测试是指用少量的测试用例,发现被测软件尽可能多的错误。软件测试不能说明软件中不存在错误。

  • 第18题:

    对发现错误较多的程序模块,应进行()测试。


    正确答案:重点

  • 第19题:

    在测试执行过程中发现测试的实际结果与预期结果不同,记录在测试评估事件里的是()

    • A、失效
    • B、失败
    • C、缺陷
    • D、错误

    正确答案:A

  • 第20题:

    两个小组独立地测试同一个程序,第一组发现25个错误,第二组发现30个错误,在两个小组发现的错误中有15个是共同的,那么可以估计程序中的错误总数是()。


    正确答案:50

  • 第21题:

    在现场检测中,对破坏性的非复现测试,对同一数据测2次,可以避免人为错误。


    正确答案:正确

  • 第22题:

    一个好的测试用例,()。

    • A、能找出所有隐藏的错误
    • B、可以进行穷举测试
    • C、只包括输入数据和执行步骤
    • D、能够发现至今没有发现的错误

    正确答案:D

  • 第23题:

    单选题
    在软件测试阶段,如果某个测试人员认为程序出现错误,他应()
    A

    首先要对错误结果进行确认

    B

    立刻修改错误以保证程序的正确运行

    C

    重新设计测试

    D

    撰写错误分析报告


    正确答案: A
    解析: 暂无解析