软件测试的一个主要工作原则就是如何将无边无际的可能性减小到一个可以控制的范围,以及如何针对软件风险作出恰当的选择,去粗存精,找到最佳的测试量,使得测试工作量不多也不少,既能达到测试的目的,又能较为经济。

题目

软件测试的一个主要工作原则就是如何将无边无际的可能性减小到一个可以控制的范围,以及如何针对软件风险作出恰当的选择,去粗存精,找到最佳的测试量,使得测试工作量不多也不少,既能达到测试的目的,又能较为经济。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下关于面向对象软件集成测试的说法中,错误的是

A.协作集成是指将可以协作完成特定系统功能的类集成在一起进行集成测试

B.针对一个类的多个成员方法间协作的测试不属于面向对象软件集成测试关注的范畴

C.针对一个类的多个实例间协作的测试不属于面向对象软件集成测试关注的范畴

D.针对一个类树上多个类的行为的测试属于面向对象软件集成测试关注的范畴


正确答案:C
解析:协作集成是在集成测试时针对系统完成的功能,它将可以相互协作完成特定系统功能的类集成在一起进行测试。针对一个类多个实例间的测试属于面向对象集成测试的范畴。

第2题:

论软件测试计划的制定

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

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

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

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

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


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

第3题:

下列叙述中正确的是

A) 软件测试的主要目的是发现程序中的错误

B) 软件测试的主要目的是确定程序中错误的位置

C) 为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作

D) 软件测试是证明软件没有错误


正确答案:A

第4题:

论软件系统测试及其应用

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

请围绕“软件系统测试及其应用”论题,依次从以下三个方面进行论述。 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等。
其他的测试工具还包括缺陷跟踪工具、综合测试管理工具、嵌入式测试工具、数据库测试工具等。面对如此众多的测试工具,在选择时应进行综合考虑,例如,考察测试工具是否支持脚本语言,是否具有良好的脚本开发环境;脚本语言是否支持外部函数库,以及函数的可复用;测试工具对程序界面中对象的识别能力,对分布式测试的网络支持,以及是否支持数据驱动测试等方面。

第5题:

下列___不属于测试原则的内容

A.软件测试是有风险的行为

B.完全测试程序是不可能的

C.测试无法显示潜伏的软件缺陷

D.找到的缺陷越多软件的缺陷就越少


正确答案:D

第6题:

在下列选项中,有关软件测试说法中,不正确的是()。

A、软件测试是一个为了寻找软件错误而运行程序的过程

B、好测试用例是指可能找到迄今为止尚未发现的错误的用例

C、一个成功的测试是至今尚未发现的错误的测试

D、一个成功的测试是发现至今尚未发现的错误的测试


参考答案:C

第7题:

下列对于软件测试的描述中正确的是

A)软件测试的目的是证明程序是否正确

B)软件测试的目的是使程序运行结果正确

C)软件测试的目的是尽可能多地发现程序中的错误

D)软件测试的目的是使程序符合结构化原则


正确答案:C
软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。测试不是为了证明程序是正确的,而是在设想程序有错误的前提下进行的,其目的是设法暴露程序中的错误和缺陷。可见选项C的说法正确。

第8题:

下列叙述中正确的是( )。

A.软件测试的主要目的是发现程序中的错误

B.软件测试的主要目的是确定程序中错误的位置

C.为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作

D.软件测试是证明软件没有错误


正确答案:A

第9题:

软件测试是软件开发过程中的一个重要工作,它直接影响着软件的质量。一个软件产品在交付前主要经历三种测试,三种测试中不包含_______。

A.维护测试

B.模块测试

C.验收测试

D.集成测试


正确答案:A

第10题:

软件测试的一个主要工作原则就是如何将无边无际的可能性减小到一个可以控制的范围,以及如何针对软件风险作出恰当的选择,去粗存精,找到最佳的测试量,使得测试工作量不多也不少,既能达到测试的目的,又能较为经济。

A.错误

B.正确


参考答案:B

更多相关问题