请根据你的网络应用程序(软件系统)的测试经验,试判断郭工所提出的4条分析意见中哪几条是合理的,哪几条意见存在着问题?请用300字以内的文字简要说明你的理由。

题目

请根据你的网络应用程序(软件系统)的测试经验,试判断郭工所提出的4条分析意见中哪几条是合理的,哪几条意见存在着问题?请用300字以内的文字简要说明你的理由。


相似考题
参考答案和解析
正确答案:郭工程师的4条分析意见基本上都是很片面的。主要理由有: ①除了模块部件级测试外还需要进行集成测试和系统测试。 ②改正共同发现的错误虽然可以减少错误但本案例中前9天共有65个错误没有改正约占到已被测试模块估计错误总数的36.52%且这些错误需进行回归测试。那些未能发现的错误需要花费更多的人力或时间才能被测试到。错误数不可能线性减少。 ③改正错误时还会引发新的错误。统计发现某些局部性错误的改正往往在集成测试或系统测试时暴露出新的问题。 ④测试工作必须由有资历的专职测试人员组成
郭工程师的4条分析意见基本上都是很片面的。主要理由有: ①除了模块部件级测试外,还需要进行集成测试和系统测试。 ②改正共同发现的错误虽然可以减少错误,但本案例中前9天共有65个错误没有改正,约占到已被测试模块估计错误总数的36.52%,且这些错误需进行回归测试。那些未能发现的错误需要花费更多的人力或时间才能被测试到。错误数不可能线性减少。 ③改正错误时还会引发新的错误。统计发现,某些局部性错误的改正往往在集成测试或系统测试时暴露出新的问题。 ④测试工作必须由有资历的专职测试人员组成 解析:这是一道要求读者根据具体应用项目分析网络应用软件测试工作组织原则和管理原则的分析题,本题的主要解答思路如下。
1)通常,网络应用软件测试工作包含有①系统平台测试、②单元测试、③集成测试、④系统测试、⑤测试结果分析等5个步骤。对于本题所提及的只是进行了宽带路由器NanOs程序的模块级测试工作,除此之处还需进行模块之间的集成测试和系统级测试。一般说来,部件测试是属于基础性的测试工作,也是相对容易的测试工作。模块之间的集成测试和系统测试的组织管理要更困难些,也往往会纠正一个错误将可能耗费更多的人力和机时。郭工程师没能强调指出这一主要的测试局部性问题。由以上分析可知,郭工所提出的第二条分析意见——“每天的测试进度会越来越快”是过于乐观的。
2)在本题表8-6中统计所列出的仪是检测到的错误,尽管试题描述中说明了已去改正A、B两组检测到的相同错误。改正了这些共同发现的错误后虽然可以减少错误,但尚未改正的错误和潜在的错误数量仍占很大的比例(第一天:24-15=9个,第二天:35-24=11个,第三天:35-20=15个,第四天:40-24=16个,第五天:44-30=14个),本例中前5天共有9+11+15+16+14=65个错误没有改正,约占到己被测试模块估计错误总数的,并且这些错误还需进行回归测试等工作。对于那些未改正的及未被发现的错误则往往更难测试到,需要花费更多的人力或时间才能改正它们。可见错误数不可能线性减少,因此郭工所提出的第一条分析意见是错误的。
3)改正错误时还可能会引发新的错误。统计发现,某些局部性错误的改正往往在集成测试和系统测试时暴露出新的问题。另外,测试人员的测试技能不是一朝一夕或在短期内即可以形成的,这一点也说明郭工所提出的第二条分析意见是片面的。
4)对于郭工所提出的第三条分析意见存在着组织测试工作方面的问题。通常①测试工作必须由有资历的专职测试人员组成,而不能由程序设计人员进行;②测试中发现的问题须由程序设计人员修改,修改后必须做回归测试;③在软件测试之前,必须制定测试计划,规定测试的阶段(如单元测试、集成测试、系统测试等),确定测试人员的组成。可见,为避免习惯性错误,测试质量的保证最好不由原程序设计人员或代码编写人员来设计测试用例;测试用例设计与故障的具体定位采用不同的方法或策略等。因此,郭工所提出的第三条分析意见是错误的。
5)目前,常用的测试定量分析方法包括独立测试法(即本案例使用的方法)和植入错误测试法等,这些分析方法存在着一些局限性。例如,本案例所使用的独立测试法认为,所有的错误被发现的概率是一样的,所有的错误对系统的影响是一样的,认为错误的出现是独立的而忽略了错误的连锁效应,忽略修正错误所带来的新问题等,过于理想化。由此可知,所有的测试定量分析方法都过于粗糙,确定的时间进度可信度差,它仅能作为一个供测试组织管理者参考的方法。因此,郭工所提出的第四条分析意见——“可以在15天内完成NanOs程序的测试任务”是过于乐观的。
更多“请根据你的网络应用程序(软件系统)的测试经验,试判断郭工所提出的4条分析意见中哪几条是合理的, ”相关问题
  • 第1题:

    论软件测试计划的制定

    软件测试的目的是通过功能测试、性能测试、错误恢复测试等各种测试从整体上检验软件系统的质量。在进行测试时,经常面临一些限制,例如,测试环境无法对软件系统有可能发生的所有情况进行测试。因此,考虑软件测试面临的各种限制,制定一个合理的软件测试计划是十分重要的。

    请围绕“软件测试计划的制定”论题,依次对以下三个方面进行论述。

    (1)概要叙述你参与分析和开发的软件项目以及你所担任的主要工作。

    (2)论述在进行该软件项目的测试时所面临的各类具体限制;说明你为该项目制定的测试计划的基本内容(应说明有哪些内容是针对所面临的限制而专门制定的)。

    (3)详细论述测试计划的实施效果(是否在有限的条件下达到测试的目的)以及其中可以改进的方面。


    正确答案:[写作要点] (1)结合自己开发的软件产品或从事的实际工作论述制定软件测试计划的指导意义。 (2)能较为详细的论述自己参与的项目在测试时所面临的限制或实际问题。 (3)说明根据实际情况制定的测试计划的内容要重点叙述该测试计划中有哪些内容是针对上述的限制或问题而专门制定的。 测试计划应包括:所测软件的功能、输入和输出:测试内容:各项测试的进度安排:资源要求:测试资料;测试工具:测试用例的选择;测试的控制方式和过程;系统组装方式;跟踪规程、调试规程、回归测试的规定;评价标准。可以有所侧重。 结合项目实际工作根据测试结果以及制定的相关评价标准分析上述测试计划的实施效果并进行分析与评价:实施该测试计划是否达到了预期的目标若达到了给出经验总结和体会:若没有达到分析其原因及改进措施。
    [写作要点] (1)结合自己开发的软件产品或从事的实际工作,论述制定软件测试计划的指导意义。 (2)能较为详细的论述自己参与的项目在测试时所面临的限制或实际问题。 (3)说明根据实际情况制定的测试计划的内容,要重点叙述该测试计划中有哪些内容是针对上述的限制或问题而专门制定的。 测试计划应包括:所测软件的功能、输入和输出:测试内容:各项测试的进度安排:资源要求:测试资料;测试工具:测试用例的选择;测试的控制方式和过程;系统组装方式;跟踪规程、调试规程、回归测试的规定;评价标准。可以有所侧重。 结合项目实际工作,根据测试结果以及制定的相关评价标准,分析上述测试计划的实施效果,并进行分析与评价:实施该测试计划是否达到了预期的目标,若达到了,给出经验总结和体会:若没有达到,分析其原因及改进措施。

  • 第2题:

    论软件系统测试及其应用

    软件系统测试是将已经确认的软件与计算机硬件、外设、网络等其他设施结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,进而完善软件。系统洌试的主要内容包括功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、安装与反安装测试等,其中,最重要的是功能测试和性能测试。功能测试主要采用黑盒测试方法。

    请围绕“软件系统测试及其应用”论题,依次从以下三个方面进行论述。 1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。 2.详细论述软件系统测试中功能测试的主要方法,自动化测试的主要内容和如何选择适合的自动化测试工具。 3.结合你具体参与管理和开发的实际项目,说明你是如何采用软件系统测试方法进行系统测试的,说明具体实施过程以及应用效果。


    正确答案:
    本题属于软件工程方向的考题。文章第一部分是标准问题,进行详实的项目简介即可。
    文章第二部分与第三部分内容可以结合起来论述,需要理论结合实践。在此主要说明需要用到的理论知识。其实题目中所说的” 软件系统测试中功能测试“就是平时所说的黑盒测试与白盒测试。
    白盒测试的方法包括一系列的逻辑覆盖,主要的覆盖标准有语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖、条件组合覆盖、修正的条件/判定覆盖和路径覆盖等。
    (1)语句覆盖。语句覆盖是指选择足够多的测试用例,使得运行这些测试用例时,被测程序的每个语句至少执行一次。很显然,语句覆盖是一种很弱的覆盖标准。
    (2)判定覆盖。判定覆盖也称为分支覆盖,它是指不仅每个语句至少执行一次,而且每个判定的每种可能的结果(分支)都至少执行一次。判定覆盖比语句覆盖强,但对程序逻辑的覆盖程度仍然不高。
    (3)条件覆盖。条件覆盖是指不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取得各种可能的结果。条件覆盖不一定包含判定覆盖,判定覆盖也不一定包含条件覆盖。
    (4)条件/判定覆盖。同时满足判定覆盖和条件覆盖的逻辑覆盖称为判定/条件覆盖。它的含义是,选取足够的测试用例,使得判定表达式中每个条件的所有可能结果至少出现一次,而且每个判定本身的所有可能结果也至少出现一次。
    (5)条件组合覆盖。条件组合覆盖是指选取足够的测试用例,使得每个判定表达式中条件结果的所有可能组合至少出现一次。显然,满足条件组合覆盖的测试用例,也一定满足判定/条件覆盖。因此,条件组合覆盖是上述5种覆盖标准中最强的一种。然而,条件组合覆盖还不能保证程序中所有可能的路径都至少遍历一次。
    (6)修正的条件/判定覆盖。修正的条件/判定覆盖需要足够的测试用例来确定各个条件能够影响到包含的判定结果。首先,每个程序模块的入口和出口点都要考虑至少要被调用一次,每个程序的判定到所有可能的结果值要至少转换一次;其次,程序的判定被分解为通过逻辑操作符(and和or)连接的布尔条件,每个条件对于判定的结果值是独立的。
    (7)路径覆盖。路径覆盖是指选取足够的测试用例,使得程序的每条可能执行到的路径都至少经过一次(如果程序中有环路,则要求每条环路路径至少经过一次)。路径覆盖实际上考虑了程序中各种判定结果的所有可能组合,因此是一种较强的覆盖标准。但路径覆盖并未考虑判定中的条件结果的组合,并不能代替条件覆盖和条件组合覆盖。
    常见的黑盒测试包括:
    (1)等价类划分。在设计测试用例时,等价类划分是用得最多的一种黑盒测试方法。所谓等价类就是某个输入域的集合,对于一个等价类中的输入值来说,它们揭示程序错误的作用是等效的。也就是说,如果等价类中的一个输入数据能检测出一个错误,那么等价类中的其他输入数据也能检测出同一个错误;反之,如果等价类中的一个输入数据不能检测出某个错误,那么等价类中的其他输入数据也不能检测出这一错误(除非这个等价类的某个子集还属于另个一等价类)。
    (2)边界值分析。经验表明,软件在处理边界情况时最容易出错。设计一些测试用例,使软件恰好运行在边界附近,暴露出软件错误的可能性会更大一些。通常,每一个等价类的边界,都应该着重测试,选取的测试数据应该恰好等于、稍小于或稍大于边界值。例如,对于条件“10<x<30”的测试,可以选取x的值为9、10、30和31作为测试数据。
    在实际测试工作中,将等价类划分法和边界值分析法结合使用,能更有效地发现软件中的错误。
    (3)错误推测。使用等价类划分和边界值分析技术,有助于设计出具有代表性的、容易暴露软件错误的测试方案。但是,不同类型的软件通常有一些特殊的容易出错的地方。错误推测法主要依靠测试人员的经验和直觉,从各种可能的测试用例中选出一些最可能引起程序出错的用例。
    虽然手工测试可以找到软件的很多缺陷,但这是一个艰苦和耗时的过程,而且可能无法有效地发现某些类型的缺陷。测试自动化是一个通过编程完成测试的过程,一旦测试实现了自动化,大量的测试用例就可以迅速得到执行。
    自动化测试通常需要构建存放程序软件包和测试软件包的文件服务器、存储测试用例和测试结果的数据库服务器、执行测试的运行环境、控制服务器、Web服务器和客户端程序。自动化测试的主要实现方法包括代码的静态与动态分析、测试过程的捕获与回放、测试脚本技术、虚拟用户技术和测试管理技术等。
    自动化测试工具的关键特性之一是具有良好的脚本开发环境。测试工具首先应该具有相对应的容错处理系统,可以自动处理一些异常状况;其次要能够提供类似软件集成开发环境中的调试功能,支持脚本的运行、设置断点、得到变量返回结果等,可以更有效地对测试脚本的执行进行跟踪、检查并迅速定位问题;最后,测试脚本的开发通常也需要一个团队的开发环境,即测试工具对脚本代码能很好地进行控制与管理。
    目前,测试工具主要有单元测试工具、负载和性能测试工具、GUI功能测试工具和基于Web应用的测试工具等。
    (1)单元测试工具。单元测试工具主要包括C/C++测试工具(例如,Panorama C++和C++ Test等)、Java开源测试框架JUnit、内存资源泄漏检查工具(例如,Numega的BounceChecker和Rational的Purify等)、代码覆盖率检查工具(例如,Numega的TrueCoverage、Rational的PureCoverage和TeleLogic的LogiScope等)、代码性能检查工具(例如,LogiScope的Macabe等)和软件纠错工具(例如,Rational Purl等)。
    (2)负载和性能测试工具。负载和性能测试工具是软件测试中作用最大的工具,可以完成一些难以用手工实现的测试,常用工具包括Mercury Interactive的LoadRunner和Compuware的QALoad,以及IBM Rational的SQA Load、Performance和Visual Quality。
    (3)GUI功能测试工具。GUI功能测试工具主要用于回归测试,主要工具包括Mercury Interactive的WinRunner和Compuware的QARun,以及IBM Rational的SQA Robot和Microsoft的Visual Test Suite等。
    (4)基于Web应用的测试工具。基于Web应用的测试工具主要进行链接检查、HTML检查、Web功能和安全性等方面的测试。主要的测试工具包括MI公司的Astra系列和RSW公司的E-TestSuite,以及WorkBench、Web Application Stress(WAS)Tool和Link Sleuth等。
    其他的测试工具还包括缺陷跟踪工具、综合测试管理工具、嵌入式测试工具、数据库测试工具等。面对如此众多的测试工具,在选择时应进行综合考虑,例如,考察测试工具是否支持脚本语言,是否具有良好的脚本开发环境;脚本语言是否支持外部函数库,以及函数的可复用;测试工具对程序界面中对象的识别能力,对分布式测试的网络支持,以及是否支持数据驱动测试等方面。

  • 第3题:

    你认为应如何对一个软件实施测试,试结合你所参与过的软件项目,阐述软件测试工作的一般过程。


    B

  • 第4题:

    阅读以下网络测试与网络协议分析方面的技术说明,根据要求回答问题1~问题4。

    [说明]

    网络测试能获得第一手网络运行数据,为合理规划、建设网络及有效管理、维护网络奠定了基础。如图6-19所示为在某园区网出口处用Sniffer软件捕捉的部分数据包。

    网络测试工具主要有哪些类型?请简要说明各类型网络测试工具的功能。


    正确答案:线缆测试仪:用于检测线缆质量可以直接判断线路的通断状况 网络协议分析仪:用于网络的被动测试分析仪捕获网络上的数据包和数据帧通过分析捕获的数据帧以迅速检查网络问题 网络测试仪:是专用的软硬件结合的测试设备用于网络的主动测试能对网缩设备、网络系统及网络应用进行综合测试
    线缆测试仪:用于检测线缆质量,可以直接判断线路的通断状况 网络协议分析仪:用于网络的被动测试,分析仪捕获网络上的数据包和数据帧,通过分析捕获的数据帧以迅速检查网络问题 网络测试仪:是专用的软硬件结合的测试设备,用于网络的主动测试,能对网缩设备、网络系统及网络应用进行综合测试 解析:合理的网络测试是网络正常运行的基础,通过测试还能对网络日后的扩容提供参考数据,避免在网络建设、维护、使用方面重复投资,这有利于降低管理成本、提高效益,同时通过测试能够加快网络部署的速度,迅速发现网络中的问题,确保网络中的各项服务。
    网络测试工具主要有线缆测试仪、网络协议分析仪和网络测试仪。线缆测试仪用于检测线缆质量,可以直接判断线路的通断状况。网络协议分析仪多用于网络的被动测试,分析仪捕获网络上的数据包和数据帧,通过分析捕获的数据帧以迅速检查网络问题。网络测试仪是专用的软硬件结合的测试设备,具有特殊的测试板卡和测试软件。它多用于网络的主动测试,能对网络设备、网络系统及网络应用进行综合测试,具备典型的3大功能:数据报捕获、负载产生和智能分析等。

  • 第5题:

    论软件系统测试及其应用

    软件系统测试是将已经确认的软件与计算机硬件、外设、网络等其他设施结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,进而完善软件。系统洌试的主要内容包括功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、安装与反安装测试等,其中,最重要的是功能测试和性能测试。功能测试主要采用黑盒测试方法。

    1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。

    2.详细论述软件系统测试中功能测试的主要方法,自动化测试的主要内容和如何选择适合的自动化测试工具。

    3.结合你具体参与管理和开发的实际项目,说明你是如何采用软件系统测试方法进行系统测试的,说明具体实施过程以及应用效果。


    答案:
    解析:
    1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。

    解析:

    根据要求能够概要叙述你参与和开发的软件项目背景,可以包括项目的名称、起始时间、项目背景介绍、建设内容、项目金额等内容,介绍你在本项目中的角色,工作职责,主要承担的工作等内容。此部分内容可以分为一段,或者二段均可,字数在300-400为宜。

    2.详细论述软件系统测试中功能测试的主要方法,自动化测试的主要内容和如何选择适合的自动化测试工具。

    解析:

    功能测试主要的方法为黑盒测试。

    黑盒测试根据软件需求说明书所规定的功能来设计测试用例,一般包括功能分解、等价类划分、边界值分析、判定表、因果图、状态图、随机测试、错误推测和正交实验法等。

    测试自动化是一个通过编程完成测试的过程,一旦测试实现自动化,大量的测试用例就可以迅速执行。自动化测试通常需要构建存放程序软件包和测试软件包的文件服务器、存储测试用例和测试结果的数据库服务器、执行测试的运行环境、控制服务器、Web服务器和客户端程序。自动化测试的主要实现方法包括代码的静态与动态分析、测试过程的捕获与回放、测试脚本技术、虚拟用户技术和测试管理技术等。

    自动化测试工具的选择需要考虑以下几点:

    (1)测试工具应该具有相应的容错处理系统,可以自动处理一些异常状况;

    (2)能够提供类似软件集成开发环境中的调试功能,支持脚本的运行、设置断点、得到变量返回结果等,可以更有效地对测试脚本的执行进行跟踪、检查并迅速定位问题;

    (3) 测试脚本的开发需要支持团队的开发环境,即测试工具对脚本代码能够很好地控制和管理。

    3.结合你具体参与管理和开发的实际项目,说明你是如何采用软件系统测试方法进行系统测试的,说明具体实施过程以及应用效果。

    解析:

    你需结合自身参与项目的实际状况,在软件开发中进行软件测试,指出其参与管理和开发的项目中所进行的系统测试,包含单个用例、系统整体测试等,说明在每种测试过程中的具体实施过程、使用的方法和工具,并对实际应用效果进行分析。