软件测试相关题

一、 选择题

1. 软件测试的主要特点是 AC

A) 软件测试的开销大 B) 软件测试要依靠工具 C) 软件不能进行“穷举”测试 D) 软件测试要依靠人工 2. 整体测试又称为组装测试,其主要内容包括 CD

A) 对整体的性能进行测试 B) 用白盒法设计测试用例进行测试 C) 确定组装策略和次序 D) 对组装过程进行测试 3. 渐增式是将模块一个一个地连入系统,每连入一个模块 C A) 只需要对新连入的模块进行测试 B) 都不需要再进行测试 C) 要对新子系统进行测试 D) 都要进行回归测试

4. 静态测试是以人工的、非形式化的方法对程序进行分析和测试。常用的静态测试方法有 BCD

A) 运行程序并分析运行结果 B) 桌前检查与代码会审 C) 数据流分析图 D) 调用图 5. 集成过程的原则是 BC A) 按照模块的大小集成 B) 尽早测试包含I/O的模块 C) 尽早测试关键模块

D) 按照“输入—处理—输出”的次序进行集成 6. 关于白盒法覆盖程度的论述中正确的是 B

A) 语句覆盖:选择测试用例使程序中每条语句至少被执行一次

B) 判定覆盖:选择测试用例使程序中每个判定至少都获得一次“真”值和一次“假”值

C) 条件覆盖:选择测试用例使每个条件都满足

D) 条件组合覆盖:将所有的判定条件都组合起来执行 7. 软件测试的基本原则是 ACD A) 关键是注重选择高效的测试用例 B) 选择尽可能多的测试用例 C) 尽量不由程序设计者进行测试 D) 充分注意测试中的群集现象 8. 等价分类法的关键是 (C ) 。 A) 确定等价类的边界条件 B) 按照用例来确定等价类 C) 划分等价类

D) 确定系统中相同和不同的部分 二、 判断题

1. 单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测√ 2. 功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相√ 3. 白盒法是一种静态测试方法,主要用于模块测试。 ×

4. 整体测试又称为逻辑覆盖测试,需要对系统模块的内部结构进行测试。×

5. 在等价分类法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。× 6. 发现错误多的模块,残留在模块中的错误也多。√

7. 在分析规范(因、果) 的基础上画出因果图,再将其转换为有限项判断表,就容易得出 测试用例。√

8. 系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等 测试。×

9. 有效性测试是在模拟环境(或开发环境) 下运用黑盒法,验证软件特性是否与 需求符合。√

10. 在发现错误后,则应按照一定的技术去纠正它,纠错的关键是“错误定位”。 √ 三、 简答题

1. 渐增式与非渐增式各有何优、缺点?为什么通常采用渐增式?

答: 非渐增式是将所有的模块一次连接起来,简单、易行,节省机时,但测试过程中难于查错,发现错误也很难定位,测试效率低。

渐增式是将模块一个一个地连入系统,每连入一个模块,都要对新系统进行测试。这种组装测试方案比较非渐增式,容易查出错误及进行错误定位,有利于查出模块接口部分的错误,因此测试效率高。因此通常采用渐增式。

2. 自顶而下增值与自底而上增值各有何优、缺点? 答:

① 自顶而下增值

优点:能够尽早发现系统主控方面的问题。

缺点:无法验证桩模块是否完全模拟了下属模块的功能。无法尽早查出底层容易出错的复杂模块中的错误,所以导致过多的回归测试。 ② 自底而上增值

优点:驱动模块较容易编写桩模块,能够尽早查出底层涉及较复杂的算法和实际的I/O模块中的错误。

缺点:只有当系统所有模块全部组装完成,才能看到系统实体,才能测试系统的主控功能。

3. 等价分类法的基本思想是什么?

答: 根据程序的输入特性,将程序的定义域划分为有限个等价区段——“等价类”,从等价类中选择出的用例具有“代表性”,即测试某个等价类的代表值就等价于对这一类其他值的测试。如果某个等价类的一个输入数据(代表值) 测试中查出了错误,说明该类中其他测试用例也会有错误。

4. 一般情况驱动模块比桩模块容易设计,为什么?

答: 因为驱动模块是模拟主程序或者调用模块的功能,处于被测试模块的上层,所以驱动模块只需要模拟向被测模块传递数据,接收、打印从被测模块返回的数据的功能,较容易实现。

而桩模块用于模拟那些由被测模块所调用的下属模块的功能,由于下属模块往往不止一个,也不止一层,同时由于模块接口的复杂性,桩模块很难模拟各下层模块之间的调用关系。同时为了模拟下层模块的不同功能,需要编写多个桩模块,而这些桩模块所模拟的功能是否正确,也很难进行验证。因此,驱动模块的设计显然比桩模块容易。 5. 什么是α测试和β测试?

答: α测试是在开发机构的监督下,在确认测试阶段后期由个别用户对软件进行测试,目的是评价软件的FLURPS(功能、局域化、可使用性、可靠性、性能和支持性) ,注重界面和特色。

β测试是由支持软件预发行的客户对FLURPS 进行测试,主要目的是测试系统的可支持性。

一. 回答问题

1.软件测试的基本任务?

软件测试是按照特定的规则,发现软件错误的过程;好的测试方案是尽可能发现迄今尚未发现错误的测试;成功的测试方案是发现迄今尚未发现错误的测试;

2.测试与调试的主要区别?

(1) (1) 测试从一个侧面证明程序员的失败;调试证明程序员的正确;

(2) (2) 测试从已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试从不可知内部条件开始,除统计性调试外,结果是不可预见的;

(3) (3) 测试有计划并且要进行测试设计;调试不受时间约束;

(4) (4) 测试是发现错误、改正错误、重新测试的过程;调试是一个推理的过程;

(5) (5) 测试执行是有规程的;调试执行要求程序员进行必要的推理;

(6) (6) 测试由独立的测试组在不了解软件设计的件下完成;调试由了解详细设计的程序员完成;

(7) (7) 大多数测试的执行和设计可由工具支持;调试用的工具主要是调试器。

3.人工复审的方式和作用?

人工复审的方式:代码会审、走查和排练和办公桌检查;

人工复审的作用:检查程序的静态错误。

4.什么是黑盒测试? 黑盒测试主要采用的技术有哪些?

黑盒测试也称为功能测试, 它着眼于程序的外部特征, 而不考虑程序的内部逻辑结构。测试者把被测程序看成一个黑盒, 不用关心程序的内部结构。黑盒测试是在程序接口处进行测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息(如数据库或文件) 的完整性。

黑盒测试主要采用的技术有:等价分类法、边沿值分析法、错误推测法和因果图等技术。

5.什么是白盒测试? 白盒测试主要采用的技术有哪些?

测试者了解被测程序的内部结构和处理过程, 对程序的所有逻辑路径进行测试, 在不同点检查程序状态, 确定实际状态与预期状态是否一致。

白盒测试主要采用的技术有:路径测试技术和事务处理流程技术,对包含有大量逻辑判断或

条件组合的程序采用基于逻辑的测试技术。

6. 路径测试技术中几种主要覆盖的含义? 举例说明?

语句覆盖:至少执行程序中所有语句一次。

判定覆盖:使被测程序中的每一个分支至少执行一次。故也称为分支覆盖。

条件覆盖:执行所有可能的穿过程序的控制路流程。

条件组合测试:设计足够的测试用例,使每个判定中的所有可能条件取值组合至少执行一次。

(例略)

7. 等价分类法的测试技术采用的一般方法? 举例说明?

(1) (1) 为每个等价类编号;

(2) (2) 设计一个新的测试方案, 以尽可能多的覆盖尚未被覆盖的有效等价类, 重复这一步骤, 直到所有有效等价类被覆盖为止。

(3) (3) 设计一个新的测试方案, 使它覆盖一个尚未被覆盖的无效等价类, 重复这一步骤, 直到所有无效等价类被覆盖为止。

(例略)

8.软件测试的一般步骤?

单元测试、子系统测试、系统测试、验收测试、平行测试。

9.比较集成试的两种方式的优劣?

非渐增式测试方式:分别测试模块, 再把所有模块按设计要求放在一起组成所要的程序。该方法编写测试软件工作量大,模块间的接口错误发现得晚,错误定位较难诊断,总体测试有的错误容易漏掉,测试时间相对较少,可以并行测试所有模块,能充分利用人力,加快工程进度。。

渐增式测试方式:把下一个要测试的模块, 同已经测试好的那些模块结合起来进行测试。该方法利用已测试过的模块作测试软件, 开销小,较早发现模块间的接口错误,错误定位往往和最近入的模块相关,对已测试好的模块可在新加入模块的条件下受到新的检验,测试更彻底,需要较多的测试时间,不能并行测试。

总的来说,渐增式测试方法比较好。

10.软件测试的策略?

(1) (1) 在任何情况下都应使用边界值分析的方法。

(2) (2) 必要时用等价类划分法补充测试方案。

(3) (3) 必要时再用错误推测法补充测试方案。

(4) (4) 对照程序逻辑,检查已设计出的测试方案。

(5) (5) 根据对程序可靠性的要求采用不同的逻辑覆盖标准,再补充一些测试方案。

二. 某电力公司有A 、B 、C 、D 共四类收费标准,并规定,居民用电每月200度以下按A 类收费, 200度以上按B 类收费。动力电以每月1万度为分界,非高峰用电不足1万度按B 类收费,达到或超过1万度按C 类收费。高峰用电不足1万度按C 类收费,达到或超过1万度按D 类收费。试用基于逻辑的测试方法为它设计足够的测试用例实现条件组合的完全覆概。

测试用例

三. 如图显示某程序的逻辑结构。

试为它设计足够的测试用例,分别实现对程序的判定覆概、条件覆概和条件组合覆概。

四. 某城市电话号码由三部分组成。它们的名称和内容分别是:

地区码:空白或三位数字;

前 缀:非‘0’或‘1’的三位数字;

后 缀:4位数字。

假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。

1.划分等价类

一、 选择题

1. 软件测试的主要特点是 AC

A) 软件测试的开销大 B) 软件测试要依靠工具 C) 软件不能进行“穷举”测试 D) 软件测试要依靠人工 2. 整体测试又称为组装测试,其主要内容包括 CD

A) 对整体的性能进行测试 B) 用白盒法设计测试用例进行测试 C) 确定组装策略和次序 D) 对组装过程进行测试 3. 渐增式是将模块一个一个地连入系统,每连入一个模块 C A) 只需要对新连入的模块进行测试 B) 都不需要再进行测试 C) 要对新子系统进行测试 D) 都要进行回归测试

4. 静态测试是以人工的、非形式化的方法对程序进行分析和测试。常用的静态测试方法有 BCD

A) 运行程序并分析运行结果 B) 桌前检查与代码会审 C) 数据流分析图 D) 调用图 5. 集成过程的原则是 BC A) 按照模块的大小集成 B) 尽早测试包含I/O的模块 C) 尽早测试关键模块

D) 按照“输入—处理—输出”的次序进行集成 6. 关于白盒法覆盖程度的论述中正确的是 B

A) 语句覆盖:选择测试用例使程序中每条语句至少被执行一次

B) 判定覆盖:选择测试用例使程序中每个判定至少都获得一次“真”值和一次“假”值

C) 条件覆盖:选择测试用例使每个条件都满足

D) 条件组合覆盖:将所有的判定条件都组合起来执行 7. 软件测试的基本原则是 ACD A) 关键是注重选择高效的测试用例 B) 选择尽可能多的测试用例 C) 尽量不由程序设计者进行测试 D) 充分注意测试中的群集现象 8. 等价分类法的关键是 (C ) 。 A) 确定等价类的边界条件 B) 按照用例来确定等价类 C) 划分等价类

D) 确定系统中相同和不同的部分 二、 判断题

1. 单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测√ 2. 功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相√ 3. 白盒法是一种静态测试方法,主要用于模块测试。 ×

4. 整体测试又称为逻辑覆盖测试,需要对系统模块的内部结构进行测试。×

5. 在等价分类法中,为了提高测试效率,一个测试用例可以覆盖多个无效等价类。× 6. 发现错误多的模块,残留在模块中的错误也多。√

7. 在分析规范(因、果) 的基础上画出因果图,再将其转换为有限项判断表,就容易得出 测试用例。√

8. 系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等 测试。×

9. 有效性测试是在模拟环境(或开发环境) 下运用黑盒法,验证软件特性是否与 需求符合。√

10. 在发现错误后,则应按照一定的技术去纠正它,纠错的关键是“错误定位”。 √ 三、 简答题

1. 渐增式与非渐增式各有何优、缺点?为什么通常采用渐增式?

答: 非渐增式是将所有的模块一次连接起来,简单、易行,节省机时,但测试过程中难于查错,发现错误也很难定位,测试效率低。

渐增式是将模块一个一个地连入系统,每连入一个模块,都要对新系统进行测试。这种组装测试方案比较非渐增式,容易查出错误及进行错误定位,有利于查出模块接口部分的错误,因此测试效率高。因此通常采用渐增式。

2. 自顶而下增值与自底而上增值各有何优、缺点? 答:

① 自顶而下增值

优点:能够尽早发现系统主控方面的问题。

缺点:无法验证桩模块是否完全模拟了下属模块的功能。无法尽早查出底层容易出错的复杂模块中的错误,所以导致过多的回归测试。 ② 自底而上增值

优点:驱动模块较容易编写桩模块,能够尽早查出底层涉及较复杂的算法和实际的I/O模块中的错误。

缺点:只有当系统所有模块全部组装完成,才能看到系统实体,才能测试系统的主控功能。

3. 等价分类法的基本思想是什么?

答: 根据程序的输入特性,将程序的定义域划分为有限个等价区段——“等价类”,从等价类中选择出的用例具有“代表性”,即测试某个等价类的代表值就等价于对这一类其他值的测试。如果某个等价类的一个输入数据(代表值) 测试中查出了错误,说明该类中其他测试用例也会有错误。

4. 一般情况驱动模块比桩模块容易设计,为什么?

答: 因为驱动模块是模拟主程序或者调用模块的功能,处于被测试模块的上层,所以驱动模块只需要模拟向被测模块传递数据,接收、打印从被测模块返回的数据的功能,较容易实现。

而桩模块用于模拟那些由被测模块所调用的下属模块的功能,由于下属模块往往不止一个,也不止一层,同时由于模块接口的复杂性,桩模块很难模拟各下层模块之间的调用关系。同时为了模拟下层模块的不同功能,需要编写多个桩模块,而这些桩模块所模拟的功能是否正确,也很难进行验证。因此,驱动模块的设计显然比桩模块容易。 5. 什么是α测试和β测试?

答: α测试是在开发机构的监督下,在确认测试阶段后期由个别用户对软件进行测试,目的是评价软件的FLURPS(功能、局域化、可使用性、可靠性、性能和支持性) ,注重界面和特色。

β测试是由支持软件预发行的客户对FLURPS 进行测试,主要目的是测试系统的可支持性。

一. 回答问题

1.软件测试的基本任务?

软件测试是按照特定的规则,发现软件错误的过程;好的测试方案是尽可能发现迄今尚未发现错误的测试;成功的测试方案是发现迄今尚未发现错误的测试;

2.测试与调试的主要区别?

(1) (1) 测试从一个侧面证明程序员的失败;调试证明程序员的正确;

(2) (2) 测试从已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试从不可知内部条件开始,除统计性调试外,结果是不可预见的;

(3) (3) 测试有计划并且要进行测试设计;调试不受时间约束;

(4) (4) 测试是发现错误、改正错误、重新测试的过程;调试是一个推理的过程;

(5) (5) 测试执行是有规程的;调试执行要求程序员进行必要的推理;

(6) (6) 测试由独立的测试组在不了解软件设计的件下完成;调试由了解详细设计的程序员完成;

(7) (7) 大多数测试的执行和设计可由工具支持;调试用的工具主要是调试器。

3.人工复审的方式和作用?

人工复审的方式:代码会审、走查和排练和办公桌检查;

人工复审的作用:检查程序的静态错误。

4.什么是黑盒测试? 黑盒测试主要采用的技术有哪些?

黑盒测试也称为功能测试, 它着眼于程序的外部特征, 而不考虑程序的内部逻辑结构。测试者把被测程序看成一个黑盒, 不用关心程序的内部结构。黑盒测试是在程序接口处进行测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据产生正确的输出信息,并且保持外部信息(如数据库或文件) 的完整性。

黑盒测试主要采用的技术有:等价分类法、边沿值分析法、错误推测法和因果图等技术。

5.什么是白盒测试? 白盒测试主要采用的技术有哪些?

测试者了解被测程序的内部结构和处理过程, 对程序的所有逻辑路径进行测试, 在不同点检查程序状态, 确定实际状态与预期状态是否一致。

白盒测试主要采用的技术有:路径测试技术和事务处理流程技术,对包含有大量逻辑判断或

条件组合的程序采用基于逻辑的测试技术。

6. 路径测试技术中几种主要覆盖的含义? 举例说明?

语句覆盖:至少执行程序中所有语句一次。

判定覆盖:使被测程序中的每一个分支至少执行一次。故也称为分支覆盖。

条件覆盖:执行所有可能的穿过程序的控制路流程。

条件组合测试:设计足够的测试用例,使每个判定中的所有可能条件取值组合至少执行一次。

(例略)

7. 等价分类法的测试技术采用的一般方法? 举例说明?

(1) (1) 为每个等价类编号;

(2) (2) 设计一个新的测试方案, 以尽可能多的覆盖尚未被覆盖的有效等价类, 重复这一步骤, 直到所有有效等价类被覆盖为止。

(3) (3) 设计一个新的测试方案, 使它覆盖一个尚未被覆盖的无效等价类, 重复这一步骤, 直到所有无效等价类被覆盖为止。

(例略)

8.软件测试的一般步骤?

单元测试、子系统测试、系统测试、验收测试、平行测试。

9.比较集成试的两种方式的优劣?

非渐增式测试方式:分别测试模块, 再把所有模块按设计要求放在一起组成所要的程序。该方法编写测试软件工作量大,模块间的接口错误发现得晚,错误定位较难诊断,总体测试有的错误容易漏掉,测试时间相对较少,可以并行测试所有模块,能充分利用人力,加快工程进度。。

渐增式测试方式:把下一个要测试的模块, 同已经测试好的那些模块结合起来进行测试。该方法利用已测试过的模块作测试软件, 开销小,较早发现模块间的接口错误,错误定位往往和最近入的模块相关,对已测试好的模块可在新加入模块的条件下受到新的检验,测试更彻底,需要较多的测试时间,不能并行测试。

总的来说,渐增式测试方法比较好。

10.软件测试的策略?

(1) (1) 在任何情况下都应使用边界值分析的方法。

(2) (2) 必要时用等价类划分法补充测试方案。

(3) (3) 必要时再用错误推测法补充测试方案。

(4) (4) 对照程序逻辑,检查已设计出的测试方案。

(5) (5) 根据对程序可靠性的要求采用不同的逻辑覆盖标准,再补充一些测试方案。

二. 某电力公司有A 、B 、C 、D 共四类收费标准,并规定,居民用电每月200度以下按A 类收费, 200度以上按B 类收费。动力电以每月1万度为分界,非高峰用电不足1万度按B 类收费,达到或超过1万度按C 类收费。高峰用电不足1万度按C 类收费,达到或超过1万度按D 类收费。试用基于逻辑的测试方法为它设计足够的测试用例实现条件组合的完全覆概。

测试用例

三. 如图显示某程序的逻辑结构。

试为它设计足够的测试用例,分别实现对程序的判定覆概、条件覆概和条件组合覆概。

四. 某城市电话号码由三部分组成。它们的名称和内容分别是:

地区码:空白或三位数字;

前 缀:非‘0’或‘1’的三位数字;

后 缀:4位数字。

假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。

1.划分等价类


相关文章

  • 计算机软件产品检验员国家职业标准(最终稿)
  • 计算机软件产品检验员国家职业标准 1. 职业概况 1.1 职业名称 计算机软件产品检验员. 1.2 职业定义 具备计算机软硬件知识及软件测试知识,使用计算机软.硬件设备,依据相关标准规范,利用测试工具软件.相关仪器及专用测试装置等,对计算机 ...查看


  • 高级检验员培训大纲
  • <计算机软件产品检验员国家职业标准> 培训大纲 相关知识部分--高级检验员分册 信息产业部电子行业职业技能鉴定指导中心 本部分培训大纲是<计算机软件产品检验员国家职业标准>培训大纲的相关知识--高级检验员部分,对应标 ...查看


  • 计算机职位名称
  • .[职位名称]程序员 [是什么] 程序员是指从事程序开发.维护的专业人员,一般分为程序设计人员和程序编码员. [做什么] ① 项目策划.市场调查: ② 用户的需求分析,策划程序框架.流程: ③ 编写代码,开发程序,同时编写开发文档: ④ 测 ...查看


  • 软件设计和开发控制程序
  • 公司软件设计和开发控制程序 1目的 对软件设计和开发全过程进行控制,确保产品设计和开发能满足顾客和有关标准.法令.法规的要求. 2范围 适用于软件产品设计和开发的全过程,包括软件产品的升级. 3职责 3.1软件研发部负责组织编制<项目 ...查看


  • 上市案例研习(107):业务合并问题解决之道
  • 案例研习(107):业务合并问题解决之道 [案例情况] 一.亚玛顿 (一)资产重组情况 发行人自设立以来的资产重组情况如下: 1.向亚玛顿科技收购钢化生产线及纳米材料复配相关设备 江苏立信永华资产评估房地产估价有限公司接受亚玛顿科技的委托, ...查看


  • 软件开发过程规范-20160804
  • 内蒙古航联科技开发有限责任公司 发布日期: 2016 软件开发规范 文件编号: HLKJ/RJKF-2016 版 次: A/O 分 发 号: 受控状态:受控 编 制:运维中心 审 核: 批 准: 年3月1日 实施日期: 2016年3月1日 ...查看


  • 相位噪声基础及测试原理和方法
  • 摘要:相位噪声指标对于当前的射频微波系统.移动通信系统.雷达系统等电子系统影响非常明显,将直接影响系统指标的优劣.该项指标对于系统的研发.设计均具有指导意义.相位噪声指标的测试手段很多,如何能够精准的测量该指标是射频微波领域的一项重要任务. ...查看


  • 如何进行软件需求分析
  • 如何进行软件需求分析 摘要:随着信息化的发展,中小团队所开发的软件系统在社会应用中越来越占有重要的地位,但是中小团队在开发软件研究刚刚起步,从而导致个人开发软件成本的提高及维护的困难.本文基于CMMI 相关标准,对软件需求分析进行了研究与探 ...查看


  • 软件测试机构
  • 1.川软教育: 以就业为导向,独创软件就业实训模式教学,是国内IT业培训高端机构,强调项目,技能,实战.川软教育中心是成都最好的软件测试培训机构,能保障学员毕业后高质量就业.公司与企业完全结合,培训出能胜任软件公司软件测试.自动化测试.白盒 ...查看


  • 计算机网络管理制度
  • *******公司 计算机网络管理制度 第一章 总则 第一条 为规范公司计算机网络资源的管理,促进资源的合理配置和有效利用,维护信息安全,提高公司信息化管理水平,根据高效.安全.合理原则,并结合公司实际,制定本制度. 第二条 管理权限 信息 ...查看


热门内容