第二测试技术

上传人:鲁** 文档编号:568320778 上传时间:2024-07-24 格式:PPT 页数:109 大小:376.50KB
返回 下载 相关 举报
第二测试技术_第1页
第1页 / 共109页
第二测试技术_第2页
第2页 / 共109页
第二测试技术_第3页
第3页 / 共109页
第二测试技术_第4页
第4页 / 共109页
第二测试技术_第5页
第5页 / 共109页
点击查看更多>>
资源描述

《第二测试技术》由会员分享,可在线阅读,更多相关《第二测试技术(109页珍藏版)》请在金锄头文库上搜索。

1、http:/1 1第二章第二章测试技术测试技术v第一节简介第一节简介 v第二节软件测试准则第二节软件测试准则 v第三节软件测试的实际经验与常识第三节软件测试的实际经验与常识v第四节软件测试方法第四节软件测试方法 v第五节软件测试的各个阶段第五节软件测试的各个阶段 v第六节测试问题的分类和比较第六节测试问题的分类和比较赏鹃琼幼登魄七灼焙寺缆糊边扫孪脸嗓还悉兔唇适荆萨方伐柏交概眺缝窜第二测试技术第二测试技术http:/2 2v定义软件测试定义软件测试v明确软件测试的准则明确软件测试的准则v明确测试的方法明确测试的方法*v描述软件测试的各个阶段描述软件测试的各个阶段v描述各个阶段中的测试内容描述各个

2、阶段中的测试内容本章目标本章目标桌窝惧绳沤供隧桑层影寂伐獭逼柬方伐漫躬剖时匿椒惹吴姨赠钾峰忻朔隋第二测试技术第二测试技术http:/3 3回顾回顾v软件质量的衡量标准是可以准时地交付给用户,所耗费的软件质量的衡量标准是可以准时地交付给用户,所耗费的成本不超出预算,并且最重要的是,能够正常地运行成本不超出预算,并且最重要的是,能够正常地运行vSQA的目标是通过在开发周期的早期阶段发现错误来降低的目标是通过在开发周期的早期阶段发现错误来降低解决问题的成本解决问题的成本vSQA应用于软件开发的每个阶段,每个阶段都有其自己的应用于软件开发的每个阶段,每个阶段都有其自己的质量标准质量标准v实施质量管理中

3、,要注意构建自己的管理体系,包括:构实施质量管理中,要注意构建自己的管理体系,包括:构建质量计划、建立质量保证、建立质量控制等建质量计划、建立质量保证、建立质量控制等磨炉爸仆哄阁巫避拷关炮剧九罩襄德踩这跟跺汞饯蝉距瓦屋哲臭算馅伞艘第二测试技术第二测试技术http:/4 4第一节简介第一节简介v软件测试(软件测试(why、what、who、where、when、how?)v软件测试是软件工程过程中的关键组件软件测试是软件工程过程中的关键组件v软件测试是软件质量保证的要素,可以将其描述为软件测试是软件质量保证的要素,可以将其描述为一个一个运行程序以检测错误(如果有)的运行程序以检测错误(如果有)的

4、过程过程诅爽溅锡戮泰茎耕物梢卡鹿法哼沿坷声痘际途鞍望凋现挠训奔瞩饺展蝎凋第二测试技术第二测试技术http:/5 5v 编程大师说:没有错误的程序世间难求(编程之道)编程大师说:没有错误的程序世间难求(编程之道)v 你在学校里学过测试吗?(读到博士可能也不懂测试)你在学校里学过测试吗?(读到博士可能也不懂测试)v 你所在的企业重视测试吗?(小公司程序员的技能更加你所在的企业重视测试吗?(小公司程序员的技能更加全面)全面)v 临时抱佛脚行吗?临时抱佛脚行吗?你以为有文档模板就会测试了吗你以为有文档模板就会测试了吗? v 软件测试就是调试?软件测试就是调试?第二节软件测试准则第二节软件测试准则 翅也

5、北珐曰疑月饼倒发拘哎压开风俄喀鲤奎脱四历醛戳搀歧松弊祟捐熄影第二测试技术第二测试技术http:/6 6v如果不懂得有效地进行测试,你不仅得不到功劳,如果不懂得有效地进行测试,你不仅得不到功劳,也没人欣赏你的苦劳,你拥有最多的将只是疲劳也没人欣赏你的苦劳,你拥有最多的将只是疲劳 v职业软件工程师应当掌握需求开发、系统设计、编职业软件工程师应当掌握需求开发、系统设计、编程、测试、维护程、测试、维护 所有技能所有技能触瘪粘劝裴烬肠羚单笨啡蝶别墩赛拓酶颜焙礼浩羹偿泌抠孺敝纵渊楔饱胖第二测试技术第二测试技术http:/7 7测试的目的测试的目的测试的目的测试的目的vv著名软件测试专家迈尔斯(著名软件测试

6、专家迈尔斯(著名软件测试专家迈尔斯(著名软件测试专家迈尔斯(Grenford J. MyersGrenford J. MyersGrenford J. MyersGrenford J. Myers)在软)在软)在软)在软件测试技巧一书中,就系统测试目的提出以下观点:件测试技巧一书中,就系统测试目的提出以下观点:件测试技巧一书中,就系统测试目的提出以下观点:件测试技巧一书中,就系统测试目的提出以下观点:测试是为了发现错误而执行程序的过程;测试是为了发现错误而执行程序的过程;测试是为了发现错误而执行程序的过程;测试是为了发现错误而执行程序的过程;测试是为了证明程序有错,而不是证明程序无错误;测试是

7、为了证明程序有错,而不是证明程序无错误;测试是为了证明程序有错,而不是证明程序无错误;测试是为了证明程序有错,而不是证明程序无错误;一个好的测试用例,在于能够发现至今未能发现的错误;一个好的测试用例,在于能够发现至今未能发现的错误;一个好的测试用例,在于能够发现至今未能发现的错误;一个好的测试用例,在于能够发现至今未能发现的错误;一个成功的测试是发现了至今未发现过的错误一个成功的测试是发现了至今未发现过的错误一个成功的测试是发现了至今未发现过的错误一个成功的测试是发现了至今未发现过的错误割掳环后过攒抨仆猎栽琼帜毕涪剂讥拂元诽娄钾酉垣虎舍美芽瞧舀店备酋第二测试技术第二测试技术http:/8 8v

8、测试的目的是为了发现尽可能多的缺陷测试的目的是为了发现尽可能多的缺陷,不是,不是为了说明为了说明软件中没有缺陷软件中没有缺陷 v推论:成功的测试在于发现了迄今尚未发现的缺陷。所推论:成功的测试在于发现了迄今尚未发现的缺陷。所以测试人员的职责是设计这样的测试用例,它能有效地以测试人员的职责是设计这样的测试用例,它能有效地揭示潜伏在软件里的缺陷揭示潜伏在软件里的缺陷千万不要将千万不要将“测试测试”与与“演示演示”混为一谈。例如科研鉴定会混为一谈。例如科研鉴定会如果产品通过了严格的测试,大家不要不吭气,应当好如果产品通过了严格的测试,大家不要不吭气,应当好好地宣传一把好地宣传一把昼娘蛤梭杀搽府育驹盯

9、浸碰函甥晾训肄崩呸恳早打牟瞄革臀友耕焚痞稿两第二测试技术第二测试技术http:/9 9软件测试原则软件测试原则vv应当把应当把应当把应当把“尽早地和不断地进行软件测试尽早地和不断地进行软件测试尽早地和不断地进行软件测试尽早地和不断地进行软件测试”作为软件开发作为软件开发作为软件开发作为软件开发者的座右铭。者的座右铭。者的座右铭。者的座右铭。不应把软件测试仅仅看作是软件开发的一不应把软件测试仅仅看作是软件开发的一不应把软件测试仅仅看作是软件开发的一不应把软件测试仅仅看作是软件开发的一个独立阶段,而应当把它贯穿到软件开发的各个阶段中。个独立阶段,而应当把它贯穿到软件开发的各个阶段中。个独立阶段,而

10、应当把它贯穿到软件开发的各个阶段中。个独立阶段,而应当把它贯穿到软件开发的各个阶段中。坚持在软件开发的各个阶段的技术评审,这样才能在开坚持在软件开发的各个阶段的技术评审,这样才能在开坚持在软件开发的各个阶段的技术评审,这样才能在开坚持在软件开发的各个阶段的技术评审,这样才能在开发过程中尽早发现和预防错误,把出现的错误克服在早发过程中尽早发现和预防错误,把出现的错误克服在早发过程中尽早发现和预防错误,把出现的错误克服在早发过程中尽早发现和预防错误,把出现的错误克服在早期,杜绝某些发生错误的隐患期,杜绝某些发生错误的隐患期,杜绝某些发生错误的隐患期,杜绝某些发生错误的隐患vv测试用例应由测试输入数

11、据和与之对应的预期输出结果测试用例应由测试输入数据和与之对应的预期输出结果测试用例应由测试输入数据和与之对应的预期输出结果测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成。这两部分组成。这两部分组成。这两部分组成。测试以前应当根据测试的要求选择测试测试以前应当根据测试的要求选择测试测试以前应当根据测试的要求选择测试测试以前应当根据测试的要求选择测试用例(用例(用例(用例(Test caseTest caseTest caseTest case),用来检验程序员编制的程序,因此),用来检验程序员编制的程序,因此),用来检验程序员编制的程序,因此),用来检验程序员编制的程序,因此不但需

12、要测试的输入数据,而且需要针对这些输入数据不但需要测试的输入数据,而且需要针对这些输入数据不但需要测试的输入数据,而且需要针对这些输入数据不但需要测试的输入数据,而且需要针对这些输入数据的预期输出结果的预期输出结果的预期输出结果的预期输出结果蜀邻犹积仇哈仗瞒覆聚妖蛤较公监宝包肖枢挡姥哈池缕榷起欲册手号拱嗜第二测试技术第二测试技术http:/1010vv程序员应避免测试自己的程序。程序员应避免测试自己的程序。程序员应避免测试自己的程序。程序员应避免测试自己的程序。程序员应尽可能避免测程序员应尽可能避免测程序员应尽可能避免测程序员应尽可能避免测试自己编写的程序,程序开发小组也应尽可能避免测试试自己

13、编写的程序,程序开发小组也应尽可能避免测试试自己编写的程序,程序开发小组也应尽可能避免测试试自己编写的程序,程序开发小组也应尽可能避免测试本小组开发的程序。如果条件允许,最好建立独立的软本小组开发的程序。如果条件允许,最好建立独立的软本小组开发的程序。如果条件允许,最好建立独立的软本小组开发的程序。如果条件允许,最好建立独立的软件测试小组或测试机构。这点不能与程序的调试件测试小组或测试机构。这点不能与程序的调试件测试小组或测试机构。这点不能与程序的调试件测试小组或测试机构。这点不能与程序的调试(debugingdebugingdebugingdebuging)相混淆。调试由程序员自己来做更有效

14、)相混淆。调试由程序员自己来做更有效)相混淆。调试由程序员自己来做更有效)相混淆。调试由程序员自己来做更有效vv在设计测试用例时,应当包括合理的输入条件和不合理在设计测试用例时,应当包括合理的输入条件和不合理在设计测试用例时,应当包括合理的输入条件和不合理在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。的输入条件。的输入条件。的输入条件。合理的输入条件是指能验证程序正确的输合理的输入条件是指能验证程序正确的输合理的输入条件是指能验证程序正确的输合理的输入条件是指能验证程序正确的输入条件,不合理的输入条件是指异常的、临界的,可能入条件,不合理的输入条件是指异常的、临界的,可能入条件,

15、不合理的输入条件是指异常的、临界的,可能入条件,不合理的输入条件是指异常的、临界的,可能引起问题异变的输入条件。软件系统处理非法命令的能引起问题异变的输入条件。软件系统处理非法命令的能引起问题异变的输入条件。软件系统处理非法命令的能引起问题异变的输入条件。软件系统处理非法命令的能力必须在测试时受到检验。用不合理的输入条件测试程力必须在测试时受到检验。用不合理的输入条件测试程力必须在测试时受到检验。用不合理的输入条件测试程力必须在测试时受到检验。用不合理的输入条件测试程序时,往往比用合理的输入条件进行测试能发现更多的序时,往往比用合理的输入条件进行测试能发现更多的序时,往往比用合理的输入条件进行

16、测试能发现更多的序时,往往比用合理的输入条件进行测试能发现更多的错误错误错误错误胁做缮褂脖缚痛乡别锚床鼎窄咯犁址翌孵认捅祝香湾账涎脚收驾傍毖悲到第二测试技术第二测试技术http:/1111vv充分注意测试中的群集现象。充分注意测试中的群集现象。充分注意测试中的群集现象。充分注意测试中的群集现象。在被测程序段中,若发现在被测程序段中,若发现在被测程序段中,若发现在被测程序段中,若发现错误数目多,则残存错误数目也比较多。这种错误群集错误数目多,则残存错误数目也比较多。这种错误群集错误数目多,则残存错误数目也比较多。这种错误群集错误数目多,则残存错误数目也比较多。这种错误群集性现象,已为许多程序的测

17、试实践所证实。根据这个规性现象,已为许多程序的测试实践所证实。根据这个规性现象,已为许多程序的测试实践所证实。根据这个规性现象,已为许多程序的测试实践所证实。根据这个规律,应当对错误群集的程序段进行重点测试,以提高测律,应当对错误群集的程序段进行重点测试,以提高测律,应当对错误群集的程序段进行重点测试,以提高测律,应当对错误群集的程序段进行重点测试,以提高测试投资的效益试投资的效益试投资的效益试投资的效益vv严格执行测试计划,排除测试的随意性。严格执行测试计划,排除测试的随意性。严格执行测试计划,排除测试的随意性。严格执行测试计划,排除测试的随意性。测试之前应仔测试之前应仔测试之前应仔测试之前

18、应仔细考虑测试的项目,对每一项测试做出周密的计划,包细考虑测试的项目,对每一项测试做出周密的计划,包细考虑测试的项目,对每一项测试做出周密的计划,包细考虑测试的项目,对每一项测试做出周密的计划,包括被测程序的功能、输入和输出、测试内容、进度安排、括被测程序的功能、输入和输出、测试内容、进度安排、括被测程序的功能、输入和输出、测试内容、进度安排、括被测程序的功能、输入和输出、测试内容、进度安排、资源要求等资源要求等资源要求等资源要求等过瞒滨队尘掸客汲辐俭乐凭挠余露殿游描海吏卷宦练褂蕊将压赞蜡老巴瞅第二测试技术第二测试技术http:/1212vv应当对每一个测试结果做全面检查。应当对每一个测试结果

19、做全面检查。应当对每一个测试结果做全面检查。应当对每一个测试结果做全面检查。有些错误的征兆在有些错误的征兆在有些错误的征兆在有些错误的征兆在输出实测结果时已经明显地出现了,但是如果不仔细地输出实测结果时已经明显地出现了,但是如果不仔细地输出实测结果时已经明显地出现了,但是如果不仔细地输出实测结果时已经明显地出现了,但是如果不仔细地全面地检查测试结果,就会使这些错误被遗漏掉全面地检查测试结果,就会使这些错误被遗漏掉全面地检查测试结果,就会使这些错误被遗漏掉全面地检查测试结果,就会使这些错误被遗漏掉vv妥善保存测试计划,测试用例,出错统计和最终分析报妥善保存测试计划,测试用例,出错统计和最终分析报

20、妥善保存测试计划,测试用例,出错统计和最终分析报妥善保存测试计划,测试用例,出错统计和最终分析报告。告。告。告。按照测试计划要求,将所有测试过程进行详细记录,按照测试计划要求,将所有测试过程进行详细记录,按照测试计划要求,将所有测试过程进行详细记录,按照测试计划要求,将所有测试过程进行详细记录,并将测试文档资料完整保存,以便在以后的系统维护中并将测试文档资料完整保存,以便在以后的系统维护中并将测试文档资料完整保存,以便在以后的系统维护中并将测试文档资料完整保存,以便在以后的系统维护中查阅查阅查阅查阅方孵籽寨纳呢淮庸涣槽英周穷姜萨音腿冬擦浓硬热途敬划高浪职皆急凤抛第二测试技术第二测试技术http

21、:/1313v完全测试程序是不可能的:完全测试程序是不可能的:输入量太大输入量太大输出结果太多输出结果太多软件实现途径太多软件实现途径太多软件说明书没有客观标准。从不同角度看,软件缺陷的软件说明书没有客观标准。从不同角度看,软件缺陷的标准不同标准不同例如:例如:WINDOWS自带的计算器自带的计算器软件测试准则软件测试准则漳燎喻煽纯牡叫悼尖到伟宦赘瞩奶孽绑辩烂素友村午祁悔肢逐磋畅邻昼修第二测试技术第二测试技术http:/1414v软件测试是有风险的行为软件测试是有风险的行为测试主要原则:把无穷的可能减少到可以控制的范围,测试主要原则:把无穷的可能减少到可以控制的范围,如何针对风险制订出明确选择

22、,去粗取精如何针对风险制订出明确选择,去粗取精v测试无法显示潜伏的软件缺陷测试无法显示潜伏的软件缺陷唯一的方法:继续测试,可能还会找到一些唯一的方法:继续测试,可能还会找到一些v找到的软件缺陷越多,就说明软件缺陷越多找到的软件缺陷越多,就说明软件缺陷越多程序员倦怠程序员倦怠程序员往往犯同样的错误程序员往往犯同样的错误某些软件缺陷其实是大灾难的征兆某些软件缺陷其实是大灾难的征兆乐施驻慰给云评耗德略好抑辜斌宇逊琶缉甫敛孙卵母惰笋吕刮膜酞意膀僚第二测试技术第二测试技术http:/1515v并非所有软件缺陷都能修复并非所有软件缺陷都能修复项目小组需要对一个软件缺陷进行取舍,根据风险决定项目小组需要对一

23、个软件缺陷进行取舍,根据风险决定哪些修复,哪些不要哪些修复,哪些不要v软件测试一项讲究条理的技术专业软件测试一项讲究条理的技术专业这将成为一个有前途的职业:需要训练、规范这将成为一个有前途的职业:需要训练、规范带虞杰销端铆铀送儡邵斟拦腕幸徊紊藐热禁箔憎妓帘体崩枝圈夏跑酝泄庶第二测试技术第二测试技术http:/1616vv在测试过程中一般把发现的错误按其严重性分为在测试过程中一般把发现的错误按其严重性分为在测试过程中一般把发现的错误按其严重性分为在测试过程中一般把发现的错误按其严重性分为4 4 4 4类:类:类:类:致命错误(系统崩溃或挂起、破坏数据)致命错误(系统崩溃或挂起、破坏数据)致命错误

24、(系统崩溃或挂起、破坏数据)致命错误(系统崩溃或挂起、破坏数据)严重错误(使系统不稳定、产生错误结果、菜单功能无严重错误(使系统不稳定、产生错误结果、菜单功能无严重错误(使系统不稳定、产生错误结果、菜单功能无严重错误(使系统不稳定、产生错误结果、菜单功能无法实现)法实现)法实现)法实现)一般错误(在完成某一功能时出现的错误,但并不影响一般错误(在完成某一功能时出现的错误,但并不影响一般错误(在完成某一功能时出现的错误,但并不影响一般错误(在完成某一功能时出现的错误,但并不影响该功能的实现)该功能的实现)该功能的实现)该功能的实现)建议项建议项建议项建议项 (软件不完善或用户使用不方便之处)(软

25、件不完善或用户使用不方便之处)(软件不完善或用户使用不方便之处)(软件不完善或用户使用不方便之处)软件测试应注意的问题软件测试应注意的问题欺因辫根宵豌勒雍庐淹檀禄窿涎蹦应剩椰滦堆蘸沂凸伍胜苔哎伊蹲隶肘匀第二测试技术第二测试技术http:/1717vv下面,对一些显而易见的、容易被开发者忽略的错误进下面,对一些显而易见的、容易被开发者忽略的错误进下面,对一些显而易见的、容易被开发者忽略的错误进下面,对一些显而易见的、容易被开发者忽略的错误进行列举和分析,这些错误一般很容易避免和修改,但会行列举和分析,这些错误一般很容易避免和修改,但会行列举和分析,这些错误一般很容易避免和修改,但会行列举和分析,

26、这些错误一般很容易避免和修改,但会给用户造成使用上的困难给用户造成使用上的困难给用户造成使用上的困难给用户造成使用上的困难易用性问题:用户无法使用或不方便使用易用性问题:用户无法使用或不方便使用易用性问题:用户无法使用或不方便使用易用性问题:用户无法使用或不方便使用 不符合用户操作习惯。如:快捷键定义不科学、不实用,不符合用户操作习惯。如:快捷键定义不科学、不实用,不符合用户操作习惯。如:快捷键定义不科学、不实用,不符合用户操作习惯。如:快捷键定义不科学、不实用,键位分布不合理、按键太多,甚至没有快捷键键位分布不合理、按键太多,甚至没有快捷键键位分布不合理、按键太多,甚至没有快捷键键位分布不合

27、理、按键太多,甚至没有快捷键 界面中英文混杂,界面元素参差不齐,文字显示不全界面中英文混杂,界面元素参差不齐,文字显示不全界面中英文混杂,界面元素参差不齐,文字显示不全界面中英文混杂,界面元素参差不齐,文字显示不全无自动安装程序或安装程序不完善无自动安装程序或安装程序不完善无自动安装程序或安装程序不完善无自动安装程序或安装程序不完善界面中的信息不能及时刷新,不能正确反映当前数据状界面中的信息不能及时刷新,不能正确反映当前数据状界面中的信息不能及时刷新,不能正确反映当前数据状界面中的信息不能及时刷新,不能正确反映当前数据状态,可能误导用户。如:数据库中剩余记录个数和参数态,可能误导用户。如:数据

28、库中剩余记录个数和参数态,可能误导用户。如:数据库中剩余记录个数和参数态,可能误导用户。如:数据库中剩余记录个数和参数设置对话框中的预设值常常显示为历史值而不是当前值设置对话框中的预设值常常显示为历史值而不是当前值设置对话框中的预设值常常显示为历史值而不是当前值设置对话框中的预设值常常显示为历史值而不是当前值赤材碎喧准潘剑疟耿隐暑辟费煮倡品臼溅改臭归炽钠碍备喧仰魏伤副哮因第二测试技术第二测试技术http:/1818提示信息意义不明或为原始的英文提示提示信息意义不明或为原始的英文提示提示信息意义不明或为原始的英文提示提示信息意义不明或为原始的英文提示要求用户输入多余的、本来系统可以自己得到的数据

29、。要求用户输入多余的、本来系统可以自己得到的数据。要求用户输入多余的、本来系统可以自己得到的数据。要求用户输入多余的、本来系统可以自己得到的数据。如:服务是否启动,安装后用户要手动修改某些配置文件如:服务是否启动,安装后用户要手动修改某些配置文件如:服务是否启动,安装后用户要手动修改某些配置文件如:服务是否启动,安装后用户要手动修改某些配置文件某一项功能的冗余操作太多。如:对话框嵌套层次太多某一项功能的冗余操作太多。如:对话框嵌套层次太多某一项功能的冗余操作太多。如:对话框嵌套层次太多某一项功能的冗余操作太多。如:对话框嵌套层次太多不能记忆用户的设置或操作习惯,用户每次进入都需要重不能记忆用户

30、的设置或操作习惯,用户每次进入都需要重不能记忆用户的设置或操作习惯,用户每次进入都需要重不能记忆用户的设置或操作习惯,用户每次进入都需要重新操作一次初始环境新操作一次初始环境新操作一次初始环境新操作一次初始环境对复杂的操作无联机帮助对复杂的操作无联机帮助对复杂的操作无联机帮助对复杂的操作无联机帮助图臭氏竹整误瘟酬娘绎稼浪狮羚扶臣缘值棘掠胡绑鄂幕救墅长飘虞肛捕刷第二测试技术第二测试技术http:/1919稳定性问题:影响用户正常工作稳定性问题:影响用户正常工作稳定性问题:影响用户正常工作稳定性问题:影响用户正常工作程序运行过程中不断申请但不完全释放资源,造成系程序运行过程中不断申请但不完全释放资

31、源,造成系程序运行过程中不断申请但不完全释放资源,造成系程序运行过程中不断申请但不完全释放资源,造成系统性能越来越低,并出现不规律的死机现象统性能越来越低,并出现不规律的死机现象统性能越来越低,并出现不规律的死机现象统性能越来越低,并出现不规律的死机现象不能重现的错误,有些与代码中的未初始化变量有关,不能重现的错误,有些与代码中的未初始化变量有关,不能重现的错误,有些与代码中的未初始化变量有关,不能重现的错误,有些与代码中的未初始化变量有关,有些与系统不检查异常情况有关有些与系统不检查异常情况有关有些与系统不检查异常情况有关有些与系统不检查异常情况有关对一般性错误的屏蔽能力较差对一般性错误的屏

32、蔽能力较差对一般性错误的屏蔽能力较差对一般性错误的屏蔽能力较差对输入的数据没有进行充分并且有效的有效性检查,对输入的数据没有进行充分并且有效的有效性检查,对输入的数据没有进行充分并且有效的有效性检查,对输入的数据没有进行充分并且有效的有效性检查,造成不合要求的数据进入数据库造成不合要求的数据进入数据库造成不合要求的数据进入数据库造成不合要求的数据进入数据库彝钟矿媚烤坡茄魂飘胯弓蛤薯嫁则氓骸搬拯晕栈情么拍绞摈痒捂邯又祁卵第二测试技术第二测试技术http:/2020其他问题:其他问题:其他问题:其他问题: 用户文档问题:无标准,无新功能使用方法,无版本用户文档问题:无标准,无新功能使用方法,无版本

33、用户文档问题:无标准,无新功能使用方法,无版本用户文档问题:无标准,无新功能使用方法,无版本改动说明。不仅要认为没有说明文档的产品不是一个改动说明。不仅要认为没有说明文档的产品不是一个改动说明。不仅要认为没有说明文档的产品不是一个改动说明。不仅要认为没有说明文档的产品不是一个完整的产品,也要认为没有说明或没有正确说明的功完整的产品,也要认为没有说明或没有正确说明的功完整的产品,也要认为没有说明或没有正确说明的功完整的产品,也要认为没有说明或没有正确说明的功能是一个没有完全实现的功能能是一个没有完全实现的功能能是一个没有完全实现的功能能是一个没有完全实现的功能, , , ,因为用户无法用得起来因

34、为用户无法用得起来因为用户无法用得起来因为用户无法用得起来兼容性问题:对硬件平台或软件平台的兼容性不好。兼容性问题:对硬件平台或软件平台的兼容性不好。兼容性问题:对硬件平台或软件平台的兼容性不好。兼容性问题:对硬件平台或软件平台的兼容性不好。比如:在这台计算机上可以稳定运行,而在另一台上比如:在这台计算机上可以稳定运行,而在另一台上比如:在这台计算机上可以稳定运行,而在另一台上比如:在这台计算机上可以稳定运行,而在另一台上运行就极不稳定运行就极不稳定运行就极不稳定运行就极不稳定数据接口问题:未提供与一些常用的文件格式的接口。数据接口问题:未提供与一些常用的文件格式的接口。数据接口问题:未提供与

35、一些常用的文件格式的接口。数据接口问题:未提供与一些常用的文件格式的接口。如如如如TXTTXTTXTTXT文件、文件、文件、文件、WordWordWordWord文件文件文件文件蜒池嫩沿辊宣剖克葫纪颜嘎购李晨斋笑整代义巧所踌奉躺稼宁撕煎径罚啮第二测试技术第二测试技术http:/2121第三节软件测试的实际经验与常识第三节软件测试的实际经验与常识v测试能提高软件质量,但提高质量不能依赖测试测试能提高软件质量,但提高质量不能依赖测试v测试只能证明缺陷存在,不能证明缺陷不存在测试只能证明缺陷存在,不能证明缺陷不存在v测试的主要困难:不知如何有效测试,不知何时结束测试的主要困难:不知如何有效测试,不知

36、何时结束v开发人员应测试自己的程序,但不能当通过测试的依据开发人员应测试自己的程序,但不能当通过测试的依据v80802020原则:原则:80%80%缺陷聚集在缺陷聚集在20%20%的模块中的模块中v测试应当循序渐进,不要企图一次做完测试应当循序渐进,不要企图一次做完甩嫂鸦凳葡蹋历姓订名糕咽椎鱼操嫁毫闻袍隅敢毛捐肿辛煎吴牺钩弛可奎第二测试技术第二测试技术http:/2222程序程序测试测试 静态分析静态分析(程序不执行)(程序不执行)动态测试动态测试 (程序执行)(程序执行) 静态分析器分析静态分析器分析(自动方式)(自动方式)代码评审代码评审(人工方式)(人工方式)黑盒测试(测试程序功能)黑盒

37、测试(测试程序功能) 白盒测试(测试程序结构)白盒测试(测试程序结构) 代码会审代码会审 代码走查代码走查桌面检查桌面检查第四节软件测试方法第四节软件测试方法侩臀横遵贼颤巢馆羊皇锰瞪俏赶方舜妆颂沥榜子拓护敝蟹乳涤啮式娱孟藤第二测试技术第二测试技术http:/2323v白盒测试(开盒测试),软件测试员可以访问程序员的白盒测试(开盒测试),软件测试员可以访问程序员的代码,并通过检查代码来协助测试可以看到盒子里面。代码,并通过检查代码来协助测试可以看到盒子里面。一般在单元测试中采用白盒测试一般在单元测试中采用白盒测试,用于测试模块中所有可能用于测试模块中所有可能的路径、执行所有循环并测试所有逻辑表达

38、式的路径、执行所有循环并测试所有逻辑表达式使用白盒测试,软件工程师可以:使用白盒测试,软件工程师可以:确保模块中的所有独立路径都至少测试了一次确保模块中的所有独立路径都至少测试了一次从真和假检查所有逻辑判定从真和假检查所有逻辑判定执行所有的循环并测试它们位于边界值时的操作执行所有的循环并测试它们位于边界值时的操作检查内部数据结构以确保它们的有效性检查内部数据结构以确保它们的有效性绢赵秤裸盾促余卡梭乌攘搅哩跌沉急检拟瑚蔬竣焦累逞肝苛猪刷淖矗垦身第二测试技术第二测试技术http:/2424白盒测试侧重于程序细节白盒测试侧重于程序细节没有能够实现的自动工具或测试系统没有能够实现的自动工具或测试系统白

39、盒测试的主要方法:逻辑驱动、基路测试白盒测试的主要方法:逻辑驱动、基路测试白盒测试的主要方法:逻辑驱动、基路测试白盒测试的主要方法:逻辑驱动、基路测试例如:示例例如:示例1P19、如图、如图2.1魁陪想鼓韵佬搀裳踪膏展刮辛殿砾蹿呜鳃浓涂塞顶罕幕披螺美碍庭由汕坐第二测试技术第二测试技术http:/2525v黑盒测试(功能测试)侧重软件的整体功能。黑盒测试(功能测试)侧重软件的整体功能。它不基于程它不基于程序的内部结构而基于系统功能。犹如一个人站在黑盒子外序的内部结构而基于系统功能。犹如一个人站在黑盒子外面,只知道系统输入一定数据,得到一定的输出,而不必面,只知道系统输入一定数据,得到一定的输出,

40、而不必清楚这个黑盒子中进行了哪些操作和运算。如图清楚这个黑盒子中进行了哪些操作和运算。如图2.2能够发现的错误:能够发现的错误:不正确或遗漏的功能不正确或遗漏的功能任何界面中的错误任何界面中的错误数据结构或数据库中的错误数据结构或数据库中的错误与性能和程序初始化或终止相关的错误与性能和程序初始化或终止相关的错误伐围飞庇哥吾镐撤航愉回又氰独藕娟缎战棒颗奸蘑乍涎瘩僵胚素恫檬烩傍第二测试技术第二测试技术http:/2626黑盒测试方法:黑盒测试方法:黑盒测试方法:黑盒测试方法:等价类划分等价类划分等价类划分等价类划分边界分析边界分析边界分析边界分析因果图因果图因果图因果图猜测错误猜测错误猜测错误猜测

41、错误椽附跃袁示葫肪诫裕熏其穿诣荫扦圃匿吗慎胰共比急涉掣四纷黄转怜楼能第二测试技术第二测试技术http:/2727v静态检查:静态检查:审查:审查:代码审查一般按代码审查单阅读程序,查找错代码审查一般按代码审查单阅读程序,查找错代码审查一般按代码审查单阅读程序,查找错代码审查一般按代码审查单阅读程序,查找错误。误。误。误。它以一系列典型问题为依据进行检测。它以一系列典型问题为依据进行检测。分为:代分为:代分为:代分为:代码会审、走查、桌面检查码会审、走查、桌面检查码会审、走查、桌面检查码会审、走查、桌面检查检查代码和设计的一致性检查代码和设计的一致性检查代码和设计的一致性检查代码和设计的一致性检

42、查代码的标准性、可读性检查代码的标准性、可读性检查代码的标准性、可读性检查代码的标准性、可读性检查代码逻辑表达的正确性和完整性检查代码逻辑表达的正确性和完整性检查代码逻辑表达的正确性和完整性检查代码逻辑表达的正确性和完整性检查代码结构的合理性等检查代码结构的合理性等检查代码结构的合理性等检查代码结构的合理性等靳户垛谚珐肛哀枕棕藤助感葱粪修候恳仗健疽售扼仟吧山标希衙烷洲茂赵第二测试技术第二测试技术http:/2828走查:是一对一的审查,并且更加详细,找出不足,走查:是一对一的审查,并且更加详细,找出不足,走查:是一对一的审查,并且更加详细,找出不足,走查:是一对一的审查,并且更加详细,找出不足

43、,保证读者正确理解了文档或被审查项保证读者正确理解了文档或被审查项保证读者正确理解了文档或被审查项保证读者正确理解了文档或被审查项检查是否符合编程规范检查是否符合编程规范检查是否符合编程规范检查是否符合编程规范寻找编译器中的设计陷阱寻找编译器中的设计陷阱寻找编译器中的设计陷阱寻找编译器中的设计陷阱快速理解源代码,找出流程设计中的问题快速理解源代码,找出流程设计中的问题快速理解源代码,找出流程设计中的问题快速理解源代码,找出流程设计中的问题对原有代码的重构对原有代码的重构对原有代码的重构对原有代码的重构颤沧躲募禽泽酌惊凄祖杂施龚宋跃颤毒色炮质窑喊遥寄脯都丑搜畸建阿竞第二测试技术第二测试技术htt

44、p:/2929回顾:发现软件的错误和缺陷,回顾:发现软件的错误和缺陷,回顾:发现软件的错误和缺陷,回顾:发现软件的错误和缺陷,它是在软件正式执行之它是在软件正式执行之前完成前完成功能遗漏功能遗漏功能遗漏功能遗漏对需求的不恰当理解对需求的不恰当理解对需求的不恰当理解对需求的不恰当理解程序本身的逻辑错误程序本身的逻辑错误程序本身的逻辑错误程序本身的逻辑错误检测程序细节:变量的命名正确、算法有效检测程序细节:变量的命名正确、算法有效检测程序细节:变量的命名正确、算法有效检测程序细节:变量的命名正确、算法有效蛆瓦头汽陀镇恍勾尉混佃踊拳姓候里数趋驾牲拼普疹闺彤笺椭搭彩辟馈恬第二测试技术第二测试技术htt

45、p:/3030v动态检查:动态检查:动态测试是实际运行被测程序,输入相应的测试用例,动态测试是实际运行被测程序,输入相应的测试用例,动态测试是实际运行被测程序,输入相应的测试用例,动态测试是实际运行被测程序,输入相应的测试用例,判定执行结果是否符合要求,从而检验程序的正确性、判定执行结果是否符合要求,从而检验程序的正确性、判定执行结果是否符合要求,从而检验程序的正确性、判定执行结果是否符合要求,从而检验程序的正确性、可靠性和有效性。可靠性和有效性。可靠性和有效性。可靠性和有效性。在生命周期中进行测试(运行)。在生命周期中进行测试(运行)。通常包括单元测试、集成测试、系统测试、用户的验通常包括单

46、元测试、集成测试、系统测试、用户的验收测试收测试革遵拈鸽焉脉淘对凛所琐呈髓檄捣疚耶渴碑菠表遭池番堵斤需越握告拽寿第二测试技术第二测试技术http:/3131vv测试和测试和测试和测试和测试:测试:测试:测试:如果软件是为多个客户开发,那么由每个客户都实施如果软件是为多个客户开发,那么由每个客户都实施如果软件是为多个客户开发,那么由每个客户都实施如果软件是为多个客户开发,那么由每个客户都实施正式的验收测试是不现实的。大多数软件产品的开发正式的验收测试是不现实的。大多数软件产品的开发正式的验收测试是不现实的。大多数软件产品的开发正式的验收测试是不现实的。大多数软件产品的开发人员采用所谓人员采用所谓

47、人员采用所谓人员采用所谓测试和测试和测试和测试和测试的步骤,以便让最终用测试的步骤,以便让最终用测试的步骤,以便让最终用测试的步骤,以便让最终用户快速找出错误户快速找出错误户快速找出错误户快速找出错误测试是由一个用户在开发环境下进行的测试,也可测试是由一个用户在开发环境下进行的测试,也可测试是由一个用户在开发环境下进行的测试,也可测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测以是公司内部的用户在模拟实际操作环境下进行的测以是公司内部的用户在模拟实际操作环境下进行的测以是公司内部的用户在模拟实际操作环境下进行的测试。被测试的软件由开发人员安排在可控的环

48、境下进试。被测试的软件由开发人员安排在可控的环境下进试。被测试的软件由开发人员安排在可控的环境下进试。被测试的软件由开发人员安排在可控的环境下进行检验,并记录发现的错误和使用中的问题行检验,并记录发现的错误和使用中的问题行检验,并记录发现的错误和使用中的问题行检验,并记录发现的错误和使用中的问题毋镣倚二肚用梳吾惮瘟奖诀捆蜒落植是授桶淤炽搁锁叹借袄槐蛔揭岔兽氖第二测试技术第二测试技术http:/3232测试是由软件的多个用户在一个或多个用户的实际测试是由软件的多个用户在一个或多个用户的实际测试是由软件的多个用户在一个或多个用户的实际测试是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试

49、。与使用环境下进行的测试。与使用环境下进行的测试。与使用环境下进行的测试。与测试不同的是,开发者测试不同的是,开发者测试不同的是,开发者测试不同的是,开发者通常不在测试现场。因而,通常不在测试现场。因而,通常不在测试现场。因而,通常不在测试现场。因而,测试是在开发者无法控测试是在开发者无法控测试是在开发者无法控测试是在开发者无法控制的环境下进行的软件现场应用。在制的环境下进行的软件现场应用。在制的环境下进行的软件现场应用。在制的环境下进行的软件现场应用。在测试中,由用测试中,由用测试中,由用测试中,由用户记下遇到的所有问题,包括真实的以及主观认定的户记下遇到的所有问题,包括真实的以及主观认定的

50、户记下遇到的所有问题,包括真实的以及主观认定的户记下遇到的所有问题,包括真实的以及主观认定的,定期向开发者报告,开发者在综合用户的报告之后,定期向开发者报告,开发者在综合用户的报告之后,定期向开发者报告,开发者在综合用户的报告之后,定期向开发者报告,开发者在综合用户的报告之后,做出修改,最后将软件产品交付给全体用户使用,做出修改,最后将软件产品交付给全体用户使用,做出修改,最后将软件产品交付给全体用户使用,做出修改,最后将软件产品交付给全体用户使用菱毯隘贮拱狠召刮接躲塑晕川淮揣帐逢件顾徊笑超暂涉恢矛庙雾系儿溢冶第二测试技术第二测试技术http:/3333测试阶段执行人静态校验动态校验可行性评审

51、可行性评审开发人员,用户开发人员,用户需求评审需求评审开发人员,用户开发人员,用户设计评审设计评审开发人员开发人员单元测试单元测试开发人员开发人员集成测试集成测试开发人员,用户开发人员,用户系统测试系统测试开发人员在用户开发人员在用户的协助下完成的协助下完成验收测试验收测试用户用户静态和动态测试进行结构和功能测试静态和动态测试进行结构和功能测试静态和动态测试进行结构和功能测试静态和动态测试进行结构和功能测试崖肺滴谬翰樟锌浴描毙认裁苏讨扁毙寿狈砸化啸内承魄寅舵词岳伙兄析罩第二测试技术第二测试技术http:/3434测试技术测试技术测试技术测试技术帽约馋苹半枪谷箔物邓捉清骑球交东游讯翰替幼硒童锌服

52、与姻涟潜痰尖斟第二测试技术第二测试技术http:/3535vv测试是不存在错误的证明,尽管有些软件经过测试是不存在错误的证明,尽管有些软件经过测试是不存在错误的证明,尽管有些软件经过测试是不存在错误的证明,尽管有些软件经过“ “精心测精心测精心测精心测试试试试” ”,但运行后还是不可靠,但运行后还是不可靠,但运行后还是不可靠,但运行后还是不可靠vv正如迪杰斯特拉(正如迪杰斯特拉(正如迪杰斯特拉(正如迪杰斯特拉(Edsger W. DijkstraEdsger W. DijkstraEdsger W. DijkstraEdsger W. Dijkstra)所述)所述)所述)所述“ “测试可测试可

53、测试可测试可能是一种表明存在错误的有效途径,但无法表明不存在能是一种表明存在错误的有效途径,但无法表明不存在能是一种表明存在错误的有效途径,但无法表明不存在能是一种表明存在错误的有效途径,但无法表明不存在错误错误错误错误” ”vv意思就是,如果一个软件用测试数据运行时输出发生错意思就是,如果一个软件用测试数据运行时输出发生错意思就是,如果一个软件用测试数据运行时输出发生错意思就是,如果一个软件用测试数据运行时输出发生错误,则该软件必然存在着错误;但如果输出是正确的,误,则该软件必然存在着错误;但如果输出是正确的,误,则该软件必然存在着错误;但如果输出是正确的,误,则该软件必然存在着错误;但如果

54、输出是正确的,软件可能仍然存在错误;特定的测试只能显示软件在这软件可能仍然存在错误;特定的测试只能显示软件在这软件可能仍然存在错误;特定的测试只能显示软件在这软件可能仍然存在错误;特定的测试只能显示软件在这套特定的测试数据下能正确运行套特定的测试数据下能正确运行套特定的测试数据下能正确运行套特定的测试数据下能正确运行测试情况设计测试情况设计测试情况设计测试情况设计帚迪纳骄沧悠雍荷迟催熬阮具势禽胖砧峙殊蓟楚砒椿郡馒地燥愚淳达硒躺第二测试技术第二测试技术http:/3636vv因此,在测试过程中,无论是采用人工测试还是计算机因此,在测试过程中,无论是采用人工测试还是计算机因此,在测试过程中,无论是

55、采用人工测试还是计算机因此,在测试过程中,无论是采用人工测试还是计算机辅助测试,其中最重要的问题就是设计有效的测试情况辅助测试,其中最重要的问题就是设计有效的测试情况辅助测试,其中最重要的问题就是设计有效的测试情况辅助测试,其中最重要的问题就是设计有效的测试情况vv常用的的测试情况设计方法有:常用的的测试情况设计方法有:常用的的测试情况设计方法有:常用的的测试情况设计方法有:逻辑覆盖(白盒测试)逻辑覆盖(白盒测试)逻辑覆盖(白盒测试)逻辑覆盖(白盒测试)等价划分(黑盒测试)等价划分(黑盒测试)等价划分(黑盒测试)等价划分(黑盒测试)边界分析(黑盒测试)边界分析(黑盒测试)边界分析(黑盒测试)边

56、界分析(黑盒测试)因果图(黑盒测试)因果图(黑盒测试)因果图(黑盒测试)因果图(黑盒测试)猜测错误(黑盒测试)猜测错误(黑盒测试)猜测错误(黑盒测试)猜测错误(黑盒测试)部卢捡纹伙皮相泰黑赞涅施揖涣莆陌韩雨泻挖剁绩厚由牵瓢唉斋誓糊魄徐第二测试技术第二测试技术http:/3737vv逻辑覆盖:它逻辑覆盖:它逻辑覆盖:它逻辑覆盖:它是对一系列测试过程的总称,它是在使用是对一系列测试过程的总称,它是在使用是对一系列测试过程的总称,它是在使用是对一系列测试过程的总称,它是在使用白白白白盒盒盒盒测测测测试试试试法法法法时时时时,选选选选用用用用测测测测试试试试用用用用例例例例执执执执行行行行(即即即即这

57、这这这里里里里所所所所说说说说的的的的覆覆覆覆盖盖盖盖)程序逻辑路径的方法。覆盖程度由低到高分为:程序逻辑路径的方法。覆盖程度由低到高分为:程序逻辑路径的方法。覆盖程度由低到高分为:程序逻辑路径的方法。覆盖程度由低到高分为:语句覆盖。设计若干测试用例,使程序中每一可执行语语句覆盖。设计若干测试用例,使程序中每一可执行语语句覆盖。设计若干测试用例,使程序中每一可执行语语句覆盖。设计若干测试用例,使程序中每一可执行语句至少执行一次句至少执行一次句至少执行一次句至少执行一次判断覆盖。设计用例,使程序中的每个逻辑判断的取真判断覆盖。设计用例,使程序中的每个逻辑判断的取真判断覆盖。设计用例,使程序中的每

58、个逻辑判断的取真判断覆盖。设计用例,使程序中的每个逻辑判断的取真取假分支至少经历一次取假分支至少经历一次取假分支至少经历一次取假分支至少经历一次条件覆盖。设计用例,使判断中的每个条件的可能取值条件覆盖。设计用例,使判断中的每个条件的可能取值条件覆盖。设计用例,使判断中的每个条件的可能取值条件覆盖。设计用例,使判断中的每个条件的可能取值至少满足一次至少满足一次至少满足一次至少满足一次计芜嚣弧泳苗茸孝榴卧粤洞疯瓷扮辫昭悟炒赊椭烩潜茅品其屎狱赫茫叙赚第二测试技术第二测试技术http:/3838判断判断判断判断/ / / /条件覆盖。设计用例,使得判断中的每个条件的条件覆盖。设计用例,使得判断中的每个

59、条件的条件覆盖。设计用例,使得判断中的每个条件的条件覆盖。设计用例,使得判断中的每个条件的所有可能结果至少出现一次,而且判断本身所有可能结所有可能结果至少出现一次,而且判断本身所有可能结所有可能结果至少出现一次,而且判断本身所有可能结所有可能结果至少出现一次,而且判断本身所有可能结果也至少出现一次果也至少出现一次果也至少出现一次果也至少出现一次条件组合覆盖。设计用例,使得每个判断表达式中条件条件组合覆盖。设计用例,使得每个判断表达式中条件条件组合覆盖。设计用例,使得每个判断表达式中条件条件组合覆盖。设计用例,使得每个判断表达式中条件的各种可能组合都至少出现一次;显然,满足的各种可能组合都至少出

60、现一次;显然,满足的各种可能组合都至少出现一次;显然,满足的各种可能组合都至少出现一次;显然,满足的测试的测试的测试的测试用例也一定是满足用例也一定是满足用例也一定是满足用例也一定是满足、的测试用例的测试用例的测试用例的测试用例路径覆盖。设计足够的测试用例,使程序的每条可能路路径覆盖。设计足够的测试用例,使程序的每条可能路路径覆盖。设计足够的测试用例,使程序的每条可能路路径覆盖。设计足够的测试用例,使程序的每条可能路径都至少执行一次径都至少执行一次径都至少执行一次径都至少执行一次如果把路径覆盖和条件组合覆盖结合起来,可以设计出如果把路径覆盖和条件组合覆盖结合起来,可以设计出如果把路径覆盖和条件

61、组合覆盖结合起来,可以设计出如果把路径覆盖和条件组合覆盖结合起来,可以设计出检错能力更强的测试数据用例检错能力更强的测试数据用例检错能力更强的测试数据用例检错能力更强的测试数据用例轰血喧远釜辛菜伞海娱房崔呻扔腾阳钳榴脚毁伎脑略造瘴戊值怔缺茫侥呢第二测试技术第二测试技术http:/3939vv等价类划分:它等价类划分:它等价类划分:它等价类划分:它是用黑盒测试法设计测试用例的一种技是用黑盒测试法设计测试用例的一种技是用黑盒测试法设计测试用例的一种技是用黑盒测试法设计测试用例的一种技术。它是将程序(或者模块)输入定义域中的所有可能术。它是将程序(或者模块)输入定义域中的所有可能术。它是将程序(或者

62、模块)输入定义域中的所有可能术。它是将程序(或者模块)输入定义域中的所有可能的输入数据(含有效和无效)划分成若干个等价类,每的输入数据(含有效和无效)划分成若干个等价类,每的输入数据(含有效和无效)划分成若干个等价类,每的输入数据(含有效和无效)划分成若干个等价类,每一类的一个代表性的数据在测试中的作用,就等价于这一类的一个代表性的数据在测试中的作用,就等价于这一类的一个代表性的数据在测试中的作用,就等价于这一类的一个代表性的数据在测试中的作用,就等价于这一类中的所有其他数据。也就是说,如果某一类的一个一类中的所有其他数据。也就是说,如果某一类的一个一类中的所有其他数据。也就是说,如果某一类的

63、一个一类中的所有其他数据。也就是说,如果某一类的一个用例发现了错误,这一等价类中的所有其他用例也能发用例发现了错误,这一等价类中的所有其他用例也能发用例发现了错误,这一等价类中的所有其他用例也能发用例发现了错误,这一等价类中的所有其他用例也能发现同样的错误,反之亦然。借以实现测试的经济性,大现同样的错误,反之亦然。借以实现测试的经济性,大现同样的错误,反之亦然。借以实现测试的经济性,大现同样的错误,反之亦然。借以实现测试的经济性,大大减少测试的工作量大减少测试的工作量大减少测试的工作量大减少测试的工作量瑚析遍鼠突硫兄法禹确遥章雇罕愿葫绪挥晓委畜册桅丹啄笛喂头着嗽南窒第二测试技术第二测试技术ht

64、tp:/4040【例【例【例【例7.17.17.17.1】某工厂公开招工,规定报名者年龄应在】某工厂公开招工,规定报名者年龄应在】某工厂公开招工,规定报名者年龄应在】某工厂公开招工,规定报名者年龄应在20202020周周周周岁至岁至岁至岁至39393939周岁之间(到周岁之间(到周岁之间(到周岁之间(到1999199919991999年年年年6 6 6 6月月月月30303030日止),即出生年月日止),即出生年月日止),即出生年月日止),即出生年月不早于不早于不早于不早于1960196019601960年年年年7 7 7 7月,不晚于月,不晚于月,不晚于月,不晚于19791979197919

65、79年年年年6 6 6 6月。报名程序具有自月。报名程序具有自月。报名程序具有自月。报名程序具有自动检验输入数据的功能。如出生年月不在上述范围内,动检验输入数据的功能。如出生年月不在上述范围内,动检验输入数据的功能。如出生年月不在上述范围内,动检验输入数据的功能。如出生年月不在上述范围内,将拒绝接受,并显示将拒绝接受,并显示将拒绝接受,并显示将拒绝接受,并显示“ “年龄不合格年龄不合格年龄不合格年龄不合格” ”等出错信息。试用等等出错信息。试用等等出错信息。试用等等出错信息。试用等价分类法设计对这一程序功能的测试用例价分类法设计对这一程序功能的测试用例价分类法设计对这一程序功能的测试用例价分类

66、法设计对这一程序功能的测试用例靶濒晦霍彼傈指前降费存墩筏颇级煽灾屎案慰撤镁谚虹醒附继亢轿谭戴琼第二测试技术第二测试技术http:/4141第一步:划分等价类。假定已知出生年月由第一步:划分等价类。假定已知出生年月由第一步:划分等价类。假定已知出生年月由第一步:划分等价类。假定已知出生年月由6 6 6 6位数字字位数字字位数字字位数字字符表示,前符表示,前符表示,前符表示,前4 4 4 4位代表年,后位代表年,后位代表年,后位代表年,后2 2 2 2位代表月,则可以划分为位代表月,则可以划分为位代表月,则可以划分为位代表月,则可以划分为3 3 3 3个有效等价类,个有效等价类,个有效等价类,个有

67、效等价类,7 7 7 7个无效等价类,如表个无效等价类,如表个无效等价类,如表个无效等价类,如表7-17-17-17-1所示所示所示所示输入数据输入数据有效等价类有效等价类无效等价类无效等价类出生年月出生年月66位数字字符位数字字符有非数字字符有非数字字符少于少于6 6个数字符个数字符多于多于6 6个数字符个数字符对应数值对应数值在在 196007-197906196007-197906之间之间196007197906197906月份对应数值月份对应数值在在1-121-12之间之间等于等于“0 0”1212歇睬强胆买荔吼糖响旗袄八放沼叛副兽逆笋断经焉毙拔谓录鹃形糙赋扣批第二测试技术第二测试技术

68、http:/4242第二步:设计有效等价类需要的测试用例。表第二步:设计有效等价类需要的测试用例。表第二步:设计有效等价类需要的测试用例。表第二步:设计有效等价类需要的测试用例。表7-17-17-17-1中的中的中的中的、等个有效等价类,可以公用一个测试用例,等个有效等价类,可以公用一个测试用例,等个有效等价类,可以公用一个测试用例,等个有效等价类,可以公用一个测试用例,例如:例如:例如:例如:测试数据测试数据测试数据测试数据 期望结果期望结果期望结果期望结果 测试范围测试范围测试范围测试范围 197011 197011 197011 197011 输入有效输入有效输入有效输入有效 、煞岗君眺

69、骚硫秘泪渴味兵絮癣狮甥存酋享黄店窃始靳滋赣喧丫糟谰慰架秽第二测试技术第二测试技术http:/4343第第第第三三三三步步步步:为为为为每每每每一一一一无无无无效效效效等等等等价价价价类类类类至至至至少少少少设设设设计计计计一一一一个个个个测测测测试试试试用用用用例例例例。本本本本例具有个无效等价类,需要不少于个测试用例。例如例具有个无效等价类,需要不少于个测试用例。例如例具有个无效等价类,需要不少于个测试用例。例如例具有个无效等价类,需要不少于个测试用例。例如n n 测试数据测试数据测试数据测试数据 期望结果期望结果期望结果期望结果 测试范围测试范围测试范围测试范围 n n MAY,70 MA

70、Y,70 MAY,70 MAY,70 输入无效输入无效输入无效输入无效 n n 19705 19705 19705 19705 输入无效输入无效输入无效输入无效 n n 1968011 1968011 1968011 1968011 输入无效输入无效输入无效输入无效 n n 195512 195512 195512 195512 年龄不合格年龄不合格年龄不合格年龄不合格 n n 196006 196006 196006 196006 年龄不合格年龄不合格年龄不合格年龄不合格 n n 196200 196200 196200 196200 输入无效输入无效输入无效输入无效 n n 197222

71、197222 197222 197222 输入无效输入无效输入无效输入无效 肘毁县奎箭上谎砌辈要弹雍专魁伸满狐桔逝粟叼沈饲刘婉画尾澎孝茹钙叫第二测试技术第二测试技术http:/4444让几个有效等价类公用一个测试用例,可以减少测试次让几个有效等价类公用一个测试用例,可以减少测试次让几个有效等价类公用一个测试用例,可以减少测试次让几个有效等价类公用一个测试用例,可以减少测试次数,有利而无弊;但若几个无效等价类合用一个测试用数,有利而无弊;但若几个无效等价类合用一个测试用数,有利而无弊;但若几个无效等价类合用一个测试用数,有利而无弊;但若几个无效等价类合用一个测试用例,就可能使错误漏检测。就上例而

72、言,假定把例,就可能使错误漏检测。就上例而言,假定把例,就可能使错误漏检测。就上例而言,假定把例,就可能使错误漏检测。就上例而言,假定把“ “195512195512195512195512”(对应无效等价类程序显示出(对应无效等价类程序显示出(对应无效等价类程序显示出(对应无效等价类程序显示出“ “年龄不合格年龄不合格年龄不合格年龄不合格” ”处处处处仍不能证明程序对月份为仍不能证明程序对月份为仍不能证明程序对月份为仍不能证明程序对月份为“ “00000000” ”的输入数据也具有识别和的输入数据也具有识别和的输入数据也具有识别和的输入数据也具有识别和拒绝接受的功能。再进一步讲,其实在第一步

73、拒绝接受的功能。再进一步讲,其实在第一步拒绝接受的功能。再进一步讲,其实在第一步拒绝接受的功能。再进一步讲,其实在第一步“ “划分等划分等划分等划分等价类价类价类价类” ”时,就应防止有意或无意地将几个独立的无效等时,就应防止有意或无意地将几个独立的无效等时,就应防止有意或无意地将几个独立的无效等时,就应防止有意或无意地将几个独立的无效等价类写成一个无效等价类。例如,若在上例中把价类写成一个无效等价类。例如,若在上例中把价类写成一个无效等价类。例如,若在上例中把价类写成一个无效等价类。例如,若在上例中把、两个无效等价类合并写成两个无效等价类合并写成两个无效等价类合并写成两个无效等价类合并写成“

74、 “末位的对应值为末位的对应值为末位的对应值为末位的对应值为0 0 0 0或或或或12121212” ”,则与之相应的测试用例也将从原来的个减为个,对则与之相应的测试用例也将从原来的个减为个,对则与之相应的测试用例也将从原来的个减为个,对则与之相应的测试用例也将从原来的个减为个,对程序的测试就不够完全了程序的测试就不够完全了程序的测试就不够完全了程序的测试就不够完全了尼咕幅馆霉旨模亲饰闺牧法烈休宵犁漠君番屉绒尚垢魂愧蹭队庄寞愚蒂已第二测试技术第二测试技术http:/4545vv边界分析:边界分析:边界分析:边界分析:经验表明,程序在处理边缘情况时常会出现错误,例如,经验表明,程序在处理边缘情况

75、时常会出现错误,例如,经验表明,程序在处理边缘情况时常会出现错误,例如,经验表明,程序在处理边缘情况时常会出现错误,例如,许多程序错误出现在数组下标,数据结构和循环等等的许多程序错误出现在数组下标,数据结构和循环等等的许多程序错误出现在数组下标,数据结构和循环等等的许多程序错误出现在数组下标,数据结构和循环等等的边界附近边界附近边界附近边界附近因此,设计检查边界值的测试用例暴露程序错误的可能因此,设计检查边界值的测试用例暴露程序错误的可能因此,设计检查边界值的测试用例暴露程序错误的可能因此,设计检查边界值的测试用例暴露程序错误的可能性会更大性会更大性会更大性会更大所谓边界条件,是相对于输入情形

76、输出等价类直接在其所谓边界条件,是相对于输入情形输出等价类直接在其所谓边界条件,是相对于输入情形输出等价类直接在其所谓边界条件,是相对于输入情形输出等价类直接在其边缘上,稍高于其边界和低于其边界的这些状态条件边缘上,稍高于其边界和低于其边界的这些状态条件边缘上,稍高于其边界和低于其边界的这些状态条件边缘上,稍高于其边界和低于其边界的这些状态条件汛蚊授酪翁否锑巡工归遭驱冻茫恭盛犀剩馒错扔这经骂坚扩京钱入竿茨烩第二测试技术第二测试技术http:/4646使用边界值分析方法设计测试用例,通常输入等价类和使用边界值分析方法设计测试用例,通常输入等价类和使用边界值分析方法设计测试用例,通常输入等价类和使

77、用边界值分析方法设计测试用例,通常输入等价类和输出等价类的边界值,选取刚好等于、稍小于、稍大于输出等价类的边界值,选取刚好等于、稍小于、稍大于输出等价类的边界值,选取刚好等于、稍小于、稍大于输出等价类的边界值,选取刚好等于、稍小于、稍大于等价类边界值的数据作为测试用例等价类边界值的数据作为测试用例等价类边界值的数据作为测试用例等价类边界值的数据作为测试用例边界分析法与等价类法有两方面区别:边界分析法与等价类法有两方面区别:边界分析法与等价类法有两方面区别:边界分析法与等价类法有两方面区别:边界分析不是从某个等价中随便挑一个作为代表,而是边界分析不是从某个等价中随便挑一个作为代表,而是边界分析不

78、是从某个等价中随便挑一个作为代表,而是边界分析不是从某个等价中随便挑一个作为代表,而是选出一个或几个元素,使得这个等价类的每个边界都要选出一个或几个元素,使得这个等价类的每个边界都要选出一个或几个元素,使得这个等价类的每个边界都要选出一个或几个元素,使得这个等价类的每个边界都要作为测试对象作为测试对象作为测试对象作为测试对象边界分析不仅根据输入条件,还要根据输出的情况(按边界分析不仅根据输入条件,还要根据输出的情况(按边界分析不仅根据输入条件,还要根据输出的情况(按边界分析不仅根据输入条件,还要根据输出的情况(按输出等价类)设计测试用例输出等价类)设计测试用例输出等价类)设计测试用例输出等价类

79、)设计测试用例习藏绊探杖赌熙娶瓦驼勺摄难泪梯朔焊圆瞅形撰儿盏夸洞吞慑驳牧蚕溃腔第二测试技术第二测试技术http:/4747vv因果图:因果图:因果图:因果图:因果图法也是较常用的一种黑盒测试技术因果图法也是较常用的一种黑盒测试技术因果图法也是较常用的一种黑盒测试技术因果图法也是较常用的一种黑盒测试技术因果图是一种简化了的逻辑图因果图是一种简化了的逻辑图因果图是一种简化了的逻辑图因果图是一种简化了的逻辑图当被测程序具有多种输入条件,程序的输出又依赖于输当被测程序具有多种输入条件,程序的输出又依赖于输当被测程序具有多种输入条件,程序的输出又依赖于输当被测程序具有多种输入条件,程序的输出又依赖于输入

80、条件的各种组合时,用因果图直观地表明输入条件和入条件的各种组合时,用因果图直观地表明输入条件和入条件的各种组合时,用因果图直观地表明输入条件和入条件的各种组合时,用因果图直观地表明输入条件和输出动作之间的因果关系,能帮助测试人员把注意力集输出动作之间的因果关系,能帮助测试人员把注意力集输出动作之间的因果关系,能帮助测试人员把注意力集输出动作之间的因果关系,能帮助测试人员把注意力集中到与程序功能有关的那些输入组合,比采用等价分类中到与程序功能有关的那些输入组合,比采用等价分类中到与程序功能有关的那些输入组合,比采用等价分类中到与程序功能有关的那些输入组合,比采用等价分类法有更高的测试效率,但这种

81、方法的操作步骤比较复杂法有更高的测试效率,但这种方法的操作步骤比较复杂法有更高的测试效率,但这种方法的操作步骤比较复杂法有更高的测试效率,但这种方法的操作步骤比较复杂亡敌浊阵曳且棱辖粹男远且丰舒薪锄朋福臭替吼乔狄蓄畦俱抹拘假季纬苍第二测试技术第二测试技术http:/4848vv猜错:猜错:猜错:猜错:所谓猜错,就是猜测被测程序在哪些地方容易出错,然所谓猜错,就是猜测被测程序在哪些地方容易出错,然所谓猜错,就是猜测被测程序在哪些地方容易出错,然所谓猜错,就是猜测被测程序在哪些地方容易出错,然后针对可能的薄弱环节来设计测试用例后针对可能的薄弱环节来设计测试用例后针对可能的薄弱环节来设计测试用例后针

82、对可能的薄弱环节来设计测试用例它的基本想法是列举出程序中可能有的错误和容易发生它的基本想法是列举出程序中可能有的错误和容易发生它的基本想法是列举出程序中可能有的错误和容易发生它的基本想法是列举出程序中可能有的错误和容易发生错误的特殊情况,并且根据这些情况设计测试用例错误的特殊情况,并且根据这些情况设计测试用例错误的特殊情况,并且根据这些情况设计测试用例错误的特殊情况,并且根据这些情况设计测试用例显然,它比前种方法更多地依靠测试人员的直觉与经显然,它比前种方法更多地依靠测试人员的直觉与经显然,它比前种方法更多地依靠测试人员的直觉与经显然,它比前种方法更多地依靠测试人员的直觉与经验。所以,一般都先

83、用前种方法设计测试用例,然后验。所以,一般都先用前种方法设计测试用例,然后验。所以,一般都先用前种方法设计测试用例,然后验。所以,一般都先用前种方法设计测试用例,然后用猜错法补充一些例子作为辅助的手段用猜错法补充一些例子作为辅助的手段用猜错法补充一些例子作为辅助的手段用猜错法补充一些例子作为辅助的手段盾仔描付株恭刹哭羽钉漳了拟涛魄支膝貉殴巾女玩鸭迎罐流埃汝吩瓣插手第二测试技术第二测试技术http:/4949vv为了保证测试质量,软件测试必须完成规定的文档,测为了保证测试质量,软件测试必须完成规定的文档,测为了保证测试质量,软件测试必须完成规定的文档,测为了保证测试质量,软件测试必须完成规定的文

84、档,测试文档资料属于软件文档里的管理文档,它主要是为软试文档资料属于软件文档里的管理文档,它主要是为软试文档资料属于软件文档里的管理文档,它主要是为软试文档资料属于软件文档里的管理文档,它主要是为软件管理人员和开发人员提供服务件管理人员和开发人员提供服务件管理人员和开发人员提供服务件管理人员和开发人员提供服务vv测试文档资料分为:测试文档资料分为:测试文档资料分为:测试文档资料分为:测试计划:包括测试的内容、进度、条件、人员、测试测试计划:包括测试的内容、进度、条件、人员、测试测试计划:包括测试的内容、进度、条件、人员、测试测试计划:包括测试的内容、进度、条件、人员、测试用例的选取原则、测试结

85、果允许偏差的范围等,测试计用例的选取原则、测试结果允许偏差的范围等,测试计用例的选取原则、测试结果允许偏差的范围等,测试计用例的选取原则、测试结果允许偏差的范围等,测试计划又可分为测试计划与测试设计说明、测试规程以及测划又可分为测试计划与测试设计说明、测试规程以及测划又可分为测试计划与测试设计说明、测试规程以及测划又可分为测试计划与测试设计说明、测试规程以及测试用例几个部分试用例几个部分试用例几个部分试用例几个部分测试分析报告:需要对测试结果加以分析,并提出测试测试分析报告:需要对测试结果加以分析,并提出测试测试分析报告:需要对测试结果加以分析,并提出测试测试分析报告:需要对测试结果加以分析,

86、并提出测试的结论性意见。测试分析报告包括综合测试报告和验收的结论性意见。测试分析报告包括综合测试报告和验收的结论性意见。测试分析报告包括综合测试报告和验收的结论性意见。测试分析报告包括综合测试报告和验收测试报告测试报告测试报告测试报告系统测试文档系统测试文档系统测试文档系统测试文档秉瘫矫侈长噎垫凯差蒂拳枷充涅委娠骋颇贴利挛去扯焚疯恼乳遵识弛爷御第二测试技术第二测试技术http:/5050vv为使测试文档起到桥梁的作用,使它有助于程序员编制为使测试文档起到桥梁的作用,使它有助于程序员编制为使测试文档起到桥梁的作用,使它有助于程序员编制为使测试文档起到桥梁的作用,使它有助于程序员编制程序,有助于管

87、理人员监督和管理软件的开发,文档的程序,有助于管理人员监督和管理软件的开发,文档的程序,有助于管理人员监督和管理软件的开发,文档的程序,有助于管理人员监督和管理软件的开发,文档的编制必须保证一定的质量和规范。高质量、规范化测试编制必须保证一定的质量和规范。高质量、规范化测试编制必须保证一定的质量和规范。高质量、规范化测试编制必须保证一定的质量和规范。高质量、规范化测试文档的编制应体现在以下几个方面:文档的编制应体现在以下几个方面:文档的编制应体现在以下几个方面:文档的编制应体现在以下几个方面:精确性:精确性:精确性:精确性:文档的行文应当十分确切,不能出现多义性的文档的行文应当十分确切,不能出

88、现多义性的文档的行文应当十分确切,不能出现多义性的文档的行文应当十分确切,不能出现多义性的描述,同一测试课题的几个测试文档应当是协调一致、描述,同一测试课题的几个测试文档应当是协调一致、描述,同一测试课题的几个测试文档应当是协调一致、描述,同一测试课题的几个测试文档应当是协调一致、没有矛盾的没有矛盾的没有矛盾的没有矛盾的清晰性:清晰性:清晰性:清晰性:文档的编写应力求简明,如有可能,配以适当文档的编写应力求简明,如有可能,配以适当文档的编写应力求简明,如有可能,配以适当文档的编写应力求简明,如有可能,配以适当的图表,以增强其清晰性的图表,以增强其清晰性的图表,以增强其清晰性的图表,以增强其清晰

89、性竣糙贰垃辣淡暮框碰巍扫妇泡涛译唇冗失蹲啦狡邓瑞颗汛锄框季墟苍基观第二测试技术第二测试技术http:/5151规范性:规范性:规范性:规范性:在软件测试的过程中,测试文档的编制应该规在软件测试的过程中,测试文档的编制应该规在软件测试的过程中,测试文档的编制应该规在软件测试的过程中,测试文档的编制应该规范化,测试文档的测试计划、测试分析报告应有一定的范化,测试文档的测试计划、测试分析报告应有一定的范化,测试文档的测试计划、测试分析报告应有一定的范化,测试文档的测试计划、测试分析报告应有一定的规范化标准,这样有利于测试人员和开发人员、管理人规范化标准,这样有利于测试人员和开发人员、管理人规范化标准

90、,这样有利于测试人员和开发人员、管理人规范化标准,这样有利于测试人员和开发人员、管理人员的沟通和理解,避免一些不必要的重复性的工作员的沟通和理解,避免一些不必要的重复性的工作员的沟通和理解,避免一些不必要的重复性的工作员的沟通和理解,避免一些不必要的重复性的工作灵活性:灵活性:灵活性:灵活性:对于不同的软件项目,其规模和复杂度有许多对于不同的软件项目,其规模和复杂度有许多对于不同的软件项目,其规模和复杂度有许多对于不同的软件项目,其规模和复杂度有许多差异,不能一律使用同一规范,应根据具体软件开发项差异,不能一律使用同一规范,应根据具体软件开发项差异,不能一律使用同一规范,应根据具体软件开发项差

91、异,不能一律使用同一规范,应根据具体软件开发项目,决定编制测试文档的规范化程度目,决定编制测试文档的规范化程度目,决定编制测试文档的规范化程度目,决定编制测试文档的规范化程度版本控制:版本控制:版本控制:版本控制:版本管理是对系统测试的不同版本进行标识版本管理是对系统测试的不同版本进行标识版本管理是对系统测试的不同版本进行标识版本管理是对系统测试的不同版本进行标识和跟踪的过程。版本跟踪的目的是便于对版本加以区分、和跟踪的过程。版本跟踪的目的是便于对版本加以区分、和跟踪的过程。版本跟踪的目的是便于对版本加以区分、和跟踪的过程。版本跟踪的目的是便于对版本加以区分、检索和跟踪,以表明各个版本之间的关

92、系。一个版本是检索和跟踪,以表明各个版本之间的关系。一个版本是检索和跟踪,以表明各个版本之间的关系。一个版本是检索和跟踪,以表明各个版本之间的关系。一个版本是软件测试的一个实例,在性能、侧重点和深度方面与其软件测试的一个实例,在性能、侧重点和深度方面与其软件测试的一个实例,在性能、侧重点和深度方面与其软件测试的一个实例,在性能、侧重点和深度方面与其诧篷瓤所弥识砧蒜豪蛇摊枣玖荷尿云兑侩家涡漠嘛辅茎裁基蛔增噪煤埠鳞第二测试技术第二测试技术http:/5252他版本有所不同,或是修正、补充了前一版本的某些不他版本有所不同,或是修正、补充了前一版本的某些不他版本有所不同,或是修正、补充了前一版本的某些

93、不他版本有所不同,或是修正、补充了前一版本的某些不足。测试文档的版本控制也是编制测试文档规范化的一足。测试文档的版本控制也是编制测试文档规范化的一足。测试文档的版本控制也是编制测试文档规范化的一足。测试文档的版本控制也是编制测试文档规范化的一个重要内容个重要内容个重要内容个重要内容使踩旷挎飘吨栓藕状井躯粗韧乙毙练田儿苞石籽刊晾葛旱火踊便缎婿彬苔第二测试技术第二测试技术http:/5353vv测测测测试试试试文文文文件件件件描描描描述述述述了了了了要要要要执执执执行行行行的的的的软软软软件件件件测测测测试试试试及及及及测测测测试试试试的的的的结结结结果果果果。由由由由于于于于软软软软件件件件测测

94、测测试试试试是是是是一一一一个个个个很很很很复复复复杂杂杂杂的的的的过过过过程程程程,同同同同时时时时也也也也涉涉涉涉及及及及到到到到软软软软件件件件开开开开发发发发中中中中其其其其它它它它一一一一些些些些阶阶阶阶段段段段的的的的工工工工作作作作,对对对对于于于于保保保保证证证证软软软软件件件件的的的的质质质质量量量量和和和和它它它它的的的的正正正正常常常常运运运运行行行行有有有有着着着着重重重重要要要要意意意意义义义义。必必必必须须须须把把把把对对对对它它它它的的的的要要要要求求求求、测测测测试试试试过过过过程程程程及及及及测测测测试试试试的的的的结结结结果果果果以以以以正正正正式式式式的的

95、的的文文文文件件件件形形形形式式式式写写写写出出出出。测测测测试试试试文文文文件件件件的的的的编编编编写写写写是是是是测试工作规范化的一个重要组成部分测试工作规范化的一个重要组成部分测试工作规范化的一个重要组成部分测试工作规范化的一个重要组成部分vv测测测测试试试试文文文文件件件件不不不不只只只只是是是是在在在在测测测测试试试试阶阶阶阶段段段段才才才才考考考考虑虑虑虑,它它它它应应应应在在在在软软软软件件件件开开开开发发发发初初初初期期期期的的的的需需需需求求求求分分分分析析析析阶阶阶阶段段段段就就就就开开开开始始始始着着着着手手手手,因因因因为为为为测测测测试试试试文文文文件件件件与与与与用

96、用用用户户户户有有有有着着着着密密密密切切切切的的的的关关关关系系系系。在在在在设设设设计计计计阶阶阶阶段段段段的的的的一一一一些些些些设设设设计计计计方方方方案案案案也也也也应应应应在在在在测测测测试试试试文文文文件件件件中中中中得得得得到到到到反反反反映映映映,以以以以利利利利于于于于设设设设计计计计的的的的检检检检验验验验。测测测测试试试试文文文文件件件件对对对对于于于于测测测测试试试试阶阶阶阶段段段段工工工工作作作作的的的的指指指指导导导导与与与与评评评评价价价价作作作作用用用用更更更更是是是是非非非非常常常常明明明明显显显显的的的的。需需需需要要要要特特特特别别别别指指指指出出出出的

97、的的的是是是是,在在在在已已已已开开开开发发发发的的的的软软软软件件件件投投投投入入入入运运运运行行行行的的的的维维维维护护护护阶阶阶阶段段段段,常常常常常还要进行再测试或回归测试,这时还会用到测试文件常还要进行再测试或回归测试,这时还会用到测试文件常还要进行再测试或回归测试,这时还会用到测试文件常还要进行再测试或回归测试,这时还会用到测试文件系统测试文件系统测试文件系统测试文件系统测试文件琐荫再海频顶弃祷孩喉纲饺刑涎佃船芽卵侣辙止秽待荡疽散酋血剖菜戌与第二测试技术第二测试技术http:/5454vv测试文件的类型:测试文件的类型:测试文件的类型:测试文件的类型:根据测试文件所起的不同作用:根

98、据测试文件所起的不同作用:根据测试文件所起的不同作用:根据测试文件所起的不同作用:测试计划:详细规定了测试的要求,包括测试的目的和测试计划:详细规定了测试的要求,包括测试的目的和测试计划:详细规定了测试的要求,包括测试的目的和测试计划:详细规定了测试的要求,包括测试的目的和内容、方法和步骤以及评价测试的准则等。由于要测试内容、方法和步骤以及评价测试的准则等。由于要测试内容、方法和步骤以及评价测试的准则等。由于要测试内容、方法和步骤以及评价测试的准则等。由于要测试的内容可能涉及到软件的需求和软件的设计,因此必须的内容可能涉及到软件的需求和软件的设计,因此必须的内容可能涉及到软件的需求和软件的设计

99、,因此必须的内容可能涉及到软件的需求和软件的设计,因此必须及早开始测试计划的编写。测试计划的编写从需求分析及早开始测试计划的编写。测试计划的编写从需求分析及早开始测试计划的编写。测试计划的编写从需求分析及早开始测试计划的编写。测试计划的编写从需求分析阶段开始,到软件设计阶段结束时完成是适当的阶段开始,到软件设计阶段结束时完成是适当的阶段开始,到软件设计阶段结束时完成是适当的阶段开始,到软件设计阶段结束时完成是适当的触阜蜜婿驰漾歼豁街第椽涅妹郑晃汛肯屁萧替嚏拯滨硝捣锤群恕暮苇赎荣第二测试技术第二测试技术http:/5555测试分析报告:应说明对测试结果的分析情况,经过测测试分析报告:应说明对测试

100、结果的分析情况,经过测测试分析报告:应说明对测试结果的分析情况,经过测测试分析报告:应说明对测试结果的分析情况,经过测试证实了软件具有的功能以及它的欠缺和限制,并给出试证实了软件具有的功能以及它的欠缺和限制,并给出试证实了软件具有的功能以及它的欠缺和限制,并给出试证实了软件具有的功能以及它的欠缺和限制,并给出评价的结论性意见。这个意见既是对软件质量的评价,评价的结论性意见。这个意见既是对软件质量的评价,评价的结论性意见。这个意见既是对软件质量的评价,评价的结论性意见。这个意见既是对软件质量的评价,又是决定该软件能否交付用户使用的一个依据。由于它又是决定该软件能否交付用户使用的一个依据。由于它又

101、是决定该软件能否交付用户使用的一个依据。由于它又是决定该软件能否交付用户使用的一个依据。由于它要反映测试工作的情况,自然是在测试阶段内编写要反映测试工作的情况,自然是在测试阶段内编写要反映测试工作的情况,自然是在测试阶段内编写要反映测试工作的情况,自然是在测试阶段内编写根据测试文件编制的不同方法:根据测试文件编制的不同方法:根据测试文件编制的不同方法:根据测试文件编制的不同方法:自动编制:其特点在于,编制过程中得到文件编制软件自动编制:其特点在于,编制过程中得到文件编制软件自动编制:其特点在于,编制过程中得到文件编制软件自动编制:其特点在于,编制过程中得到文件编制软件的支持,并可将编好的文件记

102、录在机器可读的介质上。的支持,并可将编好的文件记录在机器可读的介质上。的支持,并可将编好的文件记录在机器可读的介质上。的支持,并可将编好的文件记录在机器可读的介质上。借助于有力的工具和手段,使得更容易完成信息的查找、借助于有力的工具和手段,使得更容易完成信息的查找、借助于有力的工具和手段,使得更容易完成信息的查找、借助于有力的工具和手段,使得更容易完成信息的查找、比较、修改等操作。无疑这是比手工编制更高效、更先比较、修改等操作。无疑这是比手工编制更高效、更先比较、修改等操作。无疑这是比手工编制更高效、更先比较、修改等操作。无疑这是比手工编制更高效、更先进的方法进的方法进的方法进的方法宪祈车笔仪

103、勇对幼钎鹰咀泉兄菩地躇悼非近绪羔砍纠腰颈期诱勾蓖耙室己第二测试技术第二测试技术http:/5656测试分析报告:应说明对测试结果的分析情况,经过测测试分析报告:应说明对测试结果的分析情况,经过测测试分析报告:应说明对测试结果的分析情况,经过测测试分析报告:应说明对测试结果的分析情况,经过测试证实了软件具有的功能以及它的欠缺和限制,并给出试证实了软件具有的功能以及它的欠缺和限制,并给出试证实了软件具有的功能以及它的欠缺和限制,并给出试证实了软件具有的功能以及它的欠缺和限制,并给出评价的结论性意见。这个意见既是对软件质量的评价,评价的结论性意见。这个意见既是对软件质量的评价,评价的结论性意见。这个

104、意见既是对软件质量的评价,评价的结论性意见。这个意见既是对软件质量的评价,又是决定该软件能否交付用户使用的一个依据。由于它又是决定该软件能否交付用户使用的一个依据。由于它又是决定该软件能否交付用户使用的一个依据。由于它又是决定该软件能否交付用户使用的一个依据。由于它要反映测试工作的情况,自然是在测试阶段内编写要反映测试工作的情况,自然是在测试阶段内编写要反映测试工作的情况,自然是在测试阶段内编写要反映测试工作的情况,自然是在测试阶段内编写根据测试文件编制的不同方法:根据测试文件编制的不同方法:根据测试文件编制的不同方法:根据测试文件编制的不同方法:自动编制:其特点在于,编制过程中得到文件编制软

105、件自动编制:其特点在于,编制过程中得到文件编制软件自动编制:其特点在于,编制过程中得到文件编制软件自动编制:其特点在于,编制过程中得到文件编制软件的支持,并可将编好的文件记录在机器可读的介质上。的支持,并可将编好的文件记录在机器可读的介质上。的支持,并可将编好的文件记录在机器可读的介质上。的支持,并可将编好的文件记录在机器可读的介质上。借助于有力的工具和手段,使得更容易完成信息的查找、借助于有力的工具和手段,使得更容易完成信息的查找、借助于有力的工具和手段,使得更容易完成信息的查找、借助于有力的工具和手段,使得更容易完成信息的查找、比较、修改等操作。无疑这是比手工编制更高效、更先比较、修改等操

106、作。无疑这是比手工编制更高效、更先比较、修改等操作。无疑这是比手工编制更高效、更先比较、修改等操作。无疑这是比手工编制更高效、更先进的方法进的方法进的方法进的方法手工编制:手工编制:手工编制:手工编制:禁桂鞠嘿果燕非屯拓碟碧弊除狂只亨精仪逮润扎绝讨摆驮夕柯跪暂蚊雌生第二测试技术第二测试技术http:/5757vv测试文件的使用(测试文件的使用(测试文件的使用(测试文件的使用(重要作用):重要作用):重要作用):重要作用):验验验验证证证证需需需需求求求求的的的的正正正正确确确确性性性性。测测测测试试试试文文文文件件件件中中中中规规规规定定定定了了了了用用用用以以以以验验验验证证证证软软软软件件

107、件件需需需需求求求求的的的的测测测测试试试试条条条条件件件件,研研研研究究究究这这这这些些些些测测测测试试试试条条条条件件件件对对对对弄弄弄弄清清清清用用用用户户户户需需需需求求求求的的的的意意意意图是十分有益的图是十分有益的图是十分有益的图是十分有益的提提提提高高高高用用用用户户户户对对对对软软软软件件件件开开开开发发发发的的的的认认认认识识识识。测测测测试试试试过过过过程程程程吸吸吸吸收收收收用用用用户户户户参参参参加加加加,可可可可让让让让他他他他们们们们理理理理解解解解一一一一个个个个自自自自动动动动化化化化应应应应用用用用系系系系统统统统的的的的开开开开发发发发与与与与运运运运行行行

108、行要要要要涉涉涉涉及及及及到到到到的的的的复复复复杂杂杂杂问问问问题题题题和和和和一一一一些些些些细细细细节节节节。用用用用户户户户协协协协助助助助编编编编制制制制测测测测试试试试文文文文件件件件将将将将有有有有助于他们了解开发过程助于他们了解开发过程助于他们了解开发过程助于他们了解开发过程提提提提高高高高用用用用户户户户对对对对应应应应用用用用系系系系统统统统本本本本身身身身的的的的认认认认识识识识。如如如如果果果果用用用用户户户户能能能能够够够够协协协协助助助助准准准准备备备备测测测测试试试试条条条条件件件件,并并并并将将将将其其其其写写写写成成成成文文文文件件件件,他他他他们们们们就就就

109、就将将将将对对对对开开开开发发发发的的的的应应应应用用用用系系系系统统统统有有有有较较较较好好好好的的的的理理理理解解解解。同同同同时时时时,也也也也有有有有助助助助于于于于用用用用户户户户澄澄澄澄清清清清他他他他们们们们一一一一些些些些可可可可能能能能模模模模糊糊糊糊的的的的认认认认识识识识。如如如如果果果果对对对对应应应应用用用用系系系系统统统统如如如如何何何何工工工工作作作作的的的的细细细细节节节节并并并并不不不不了了了了解解解解,那那那那就就就就不不不不可可可可能能能能给给给给出出出出测测测测试试试试条条条条件件件件,并并并并根根根根据据据据这这这这些些些些条条条条件件件件取取取取得得

110、得得预期的结果预期的结果预期的结果预期的结果吮绩啪炬赘暴倡已珠辞么虎摇盟垢窝蝗褂葫采乏抄集响戏苛环挛蛹赣婿腻第二测试技术第二测试技术http:/5858检验测试资源。检验测试资源。检验测试资源。检验测试资源。测试计划不仅用文件的形式把测试过程测试计划不仅用文件的形式把测试过程测试计划不仅用文件的形式把测试过程测试计划不仅用文件的形式把测试过程要完成的任务规定下来,还应说明测试工作必不可少的要完成的任务规定下来,还应说明测试工作必不可少的要完成的任务规定下来,还应说明测试工作必不可少的要完成的任务规定下来,还应说明测试工作必不可少的资源,进而检验这些资源是否可以得到,即它的可用性资源,进而检验这

111、些资源是否可以得到,即它的可用性资源,进而检验这些资源是否可以得到,即它的可用性资源,进而检验这些资源是否可以得到,即它的可用性如何。如果某个测试计划已经开发出来,但所需资源还如何。如果某个测试计划已经开发出来,但所需资源还如何。如果某个测试计划已经开发出来,但所需资源还如何。如果某个测试计划已经开发出来,但所需资源还是不落实的,那就必须及早解决是不落实的,那就必须及早解决是不落实的,那就必须及早解决是不落实的,那就必须及早解决明确任务的风险。明确任务的风险。明确任务的风险。明确任务的风险。用户理解了测试计划,他便弄清了测用户理解了测试计划,他便弄清了测用户理解了测试计划,他便弄清了测用户理解

112、了测试计划,他便弄清了测试可以做什么,不能做什么。了解测试任务的风险有助试可以做什么,不能做什么。了解测试任务的风险有助试可以做什么,不能做什么。了解测试任务的风险有助试可以做什么,不能做什么。了解测试任务的风险有助于用户对潜在的、可能出现的问题,事先作好思想上和于用户对潜在的、可能出现的问题,事先作好思想上和于用户对潜在的、可能出现的问题,事先作好思想上和于用户对潜在的、可能出现的问题,事先作好思想上和物质上的准备,例如争取另外的测试资源物质上的准备,例如争取另外的测试资源物质上的准备,例如争取另外的测试资源物质上的准备,例如争取另外的测试资源生成测试用例。生成测试用例。生成测试用例。生成测

113、试用例。测试用例的好坏决定着测试工作的成功测试用例的好坏决定着测试工作的成功测试用例的好坏决定着测试工作的成功测试用例的好坏决定着测试工作的成功和效率,选定测试用例是做好测试工作的关键一步。在和效率,选定测试用例是做好测试工作的关键一步。在和效率,选定测试用例是做好测试工作的关键一步。在和效率,选定测试用例是做好测试工作的关键一步。在测试文件编制过程中,按照规定的要求精心设计测试用测试文件编制过程中,按照规定的要求精心设计测试用测试文件编制过程中,按照规定的要求精心设计测试用测试文件编制过程中,按照规定的要求精心设计测试用例有着重要意义例有着重要意义例有着重要意义例有着重要意义醚相永氦酸故疮虽

114、光她焉甫骤甥鸵裙坡伸惊允琢少埃炬任棘寡应诲态私话第二测试技术第二测试技术http:/5959评价测试结果。评价测试结果。评价测试结果。评价测试结果。测试文件应包含测试用例,即若干测试测试文件应包含测试用例,即若干测试测试文件应包含测试用例,即若干测试测试文件应包含测试用例,即若干测试数据及其对应的预期测试结果。完成测试后,将测试结数据及其对应的预期测试结果。完成测试后,将测试结数据及其对应的预期测试结果。完成测试后,将测试结数据及其对应的预期测试结果。完成测试后,将测试结果与预期结果进行比较,便可对已进行的测试提出评价果与预期结果进行比较,便可对已进行的测试提出评价果与预期结果进行比较,便可对

115、已进行的测试提出评价果与预期结果进行比较,便可对已进行的测试提出评价意见意见意见意见再测试。再测试。再测试。再测试。测试文件中规定和说明的部分内容,在后期的测试文件中规定和说明的部分内容,在后期的测试文件中规定和说明的部分内容,在后期的测试文件中规定和说明的部分内容,在后期的维护阶段往往由于各种原因需要进行修改完善,凡是对维护阶段往往由于各种原因需要进行修改完善,凡是对维护阶段往往由于各种原因需要进行修改完善,凡是对维护阶段往往由于各种原因需要进行修改完善,凡是对修改完善后的内容都需要对相关部分进行重新测试(可修改完善后的内容都需要对相关部分进行重新测试(可修改完善后的内容都需要对相关部分进行

116、重新测试(可修改完善后的内容都需要对相关部分进行重新测试(可能包括某些接口),这就是再测试能包括某些接口),这就是再测试能包括某些接口),这就是再测试能包括某些接口),这就是再测试决定测试的有效性。决定测试的有效性。决定测试的有效性。决定测试的有效性。完成测试后,把测试结果写入文件,完成测试后,把测试结果写入文件,完成测试后,把测试结果写入文件,完成测试后,把测试结果写入文件,这对分析测试的有效性,甚至整个软件的可用性提供了这对分析测试的有效性,甚至整个软件的可用性提供了这对分析测试的有效性,甚至整个软件的可用性提供了这对分析测试的有效性,甚至整个软件的可用性提供了必要的依据。同时还能证实有关

117、方面的见解必要的依据。同时还能证实有关方面的见解必要的依据。同时还能证实有关方面的见解必要的依据。同时还能证实有关方面的见解滁娱聂粳味拔羡谗旷靖肝堡伦妮快歪餐牛地逛挡尽钠亨熟天榨肇振鉴裤忘第二测试技术第二测试技术http:/6060v对于产品说明书的制定是个很重要的设计阶段,产品说对于产品说明书的制定是个很重要的设计阶段,产品说明书的质量会直接影响到整个产品开发明书的质量会直接影响到整个产品开发v测试产品说明书属于静态黑盒子测试测试产品说明书属于静态黑盒子测试测试产品说明书测试产品说明书测试产品说明书测试产品说明书渡食秽袋麦俗资话准酞偶糠虽吱体亏殆凛衙当也环土卷栖撬凤斌鄙闹停烘第二测试技术第二

118、测试技术http:/6161v测试用例:测试用例:编写用于输入输入的实际数制和预期结果。测编写用于输入输入的实际数制和预期结果。测试用例还明确指出使用具体测试用例产生的测试程序的任试用例还明确指出使用具体测试用例产生的测试程序的任何限制何限制v使用目的:使用目的:测试用例应该设计为能够快速容易地发现尽可能多的错误测试用例应该设计为能够快速容易地发现尽可能多的错误应该通过使用和产生正确和错误的输入和输出来应该通过使用和产生正确和错误的输入和输出来“检验检验”程序程序其目标是要使用合理范围内的条件,尽可能全面地测试所其目标是要使用合理范围内的条件,尽可能全面地测试所有模块乃至整个系统有模块乃至整个

119、系统其他常用测试术语测试用例其他常用测试术语测试用例其他常用测试术语测试用例其他常用测试术语测试用例怨刨噬僳镶肺佳王骗绣鹅瓣夹卵刊翻隘谋姜莹幕笔瓦窗混勺魏汐硅籍职杠第二测试技术第二测试技术http:/6262v缺陷:最终产品同用户的期望不一致缺陷:最终产品同用户的期望不一致v缺陷的分类:缺陷的分类:错误错误遗漏遗漏超出需求的部分超出需求的部分v缺陷(未触发)缺陷(未触发)VS.错误(应首先解决)错误(应首先解决)其他常用测试术语测试与调试其他常用测试术语测试与调试其他常用测试术语测试与调试其他常用测试术语测试与调试瞄陇败桔吩孤爱美经抹碟秃灾乔艺令杂吸揖削贱狠青阴毡肛貌且背邓摈污第二测试技术第二

120、测试技术http:/6363vv系统测试的目的是为了发现尽可能多的错误,对于所暴系统测试的目的是为了发现尽可能多的错误,对于所暴系统测试的目的是为了发现尽可能多的错误,对于所暴系统测试的目的是为了发现尽可能多的错误,对于所暴露的错误最终是需要改正,系统调试的任务就是根据测露的错误最终是需要改正,系统调试的任务就是根据测露的错误最终是需要改正,系统调试的任务就是根据测露的错误最终是需要改正,系统调试的任务就是根据测试时所发现的错误,找出原因和具体的位置,并进行改试时所发现的错误,找出原因和具体的位置,并进行改试时所发现的错误,找出原因和具体的位置,并进行改试时所发现的错误,找出原因和具体的位置,

121、并进行改正,调试工作主要是由程序开发人员来进行,也就是说正,调试工作主要是由程序开发人员来进行,也就是说正,调试工作主要是由程序开发人员来进行,也就是说正,调试工作主要是由程序开发人员来进行,也就是说,谁开发的程序由谁来调试,谁开发的程序由谁来调试,谁开发的程序由谁来调试,谁开发的程序由谁来调试vv调试的结果有两个:调试的结果有两个:调试的结果有两个:调试的结果有两个:一是能确定错误原因并进行了纠正,为了保证错误已排一是能确定错误原因并进行了纠正,为了保证错误已排一是能确定错误原因并进行了纠正,为了保证错误已排一是能确定错误原因并进行了纠正,为了保证错误已排除,需要重新执行暴露该错误的原测试用

122、例以及某些回除,需要重新执行暴露该错误的原测试用例以及某些回除,需要重新执行暴露该错误的原测试用例以及某些回除,需要重新执行暴露该错误的原测试用例以及某些回归测试归测试归测试归测试另一种是未找出错误原因,那么只能对错误原因进行假另一种是未找出错误原因,那么只能对错误原因进行假另一种是未找出错误原因,那么只能对错误原因进行假另一种是未找出错误原因,那么只能对错误原因进行假设,根据假设设计新的测试用例证实这种推测,若推测设,根据假设设计新的测试用例证实这种推测,若推测设,根据假设设计新的测试用例证实这种推测,若推测设,根据假设设计新的测试用例证实这种推测,若推测失败,需进行新的推测,直至找到错误并

123、纠正失败,需进行新的推测,直至找到错误并纠正失败,需进行新的推测,直至找到错误并纠正失败,需进行新的推测,直至找到错误并纠正也认瞬塘跑脐窜垮搜拜东畅生瞒事李速文雹帧有欲楚窿训螺衡茬囱义挽吮第二测试技术第二测试技术http:/6464v调试的方法:调试的方法:归纳法归纳法收集可用的信息收集可用的信息寻找各种模式寻找各种模式构造一个或者多个假设构造一个或者多个假设证明或者反驳每个假设证明或者反驳每个假设进行适当的修改进行适当的修改验证修改结果验证修改结果橙镣垦楼节纬栓硕题锣抉藉辗锗读优份虐古纳贪呼榔邀啮卫陋悍炽女请隐第二测试技术第二测试技术http:/6565演绎法演绎法列举导致出现观察到的错误的

124、所有可能原因列举导致出现观察到的错误的所有可能原因使用可用的信息来排除各种假设使用可用的信息来排除各种假设详细描述剩下的假设详细描述剩下的假设证明或者反驳每个假设证明或者反驳每个假设判断正确性判断正确性验证修改结果验证修改结果邪蛔振篡拿秒赦鹊兄瑚芝辩镣件乖雾冒锗敖该彭肋蓬迪侦治面晴从端怒窥第二测试技术第二测试技术http:/6666回溯法:是在源代码中从观察到错误的地方回溯,尝试找回溯法:是在源代码中从观察到错误的地方回溯,尝试找到出现错误的准确位置,可能需要运行较多的测试用例以到出现错误的准确位置,可能需要运行较多的测试用例以收集更多的信息收集更多的信息v常用调试技术:常用调试技术:诊断输出

125、语句诊断输出语句快照转储快照转储跟踪指令的断点跟踪指令的断点柔纪硒秆倔刊膳纲碱笔呛芥票铺电亚撂柴泥廷撬地臼存皆点躇纠街宰剧举第二测试技术第二测试技术http:/6767需求需求开发开发高层高层设计设计详细详细设计设计编程编程单元单元测试测试集成集成测试测试系统系统测试测试验收验收测试测试v开发与测试的开发与测试的 V V 型关系:型关系:如果软件开发过程采用严格的瀑布模型,那么开发与测试如果软件开发过程采用严格的瀑布模型,那么开发与测试有有“V V”型的对应关系型的对应关系第五节软件测试的各个阶段第五节软件测试的各个阶段膛挨叛捉筏植巧荚奎豆窃炸拷灿夷吟还钉快馈丈度胆蛇魁乌哨辣馒识了蚂第二测试技

126、术第二测试技术http:/6868v单元测试、集成测试、单元测试、集成测试、系统测试、系统测试、验收测试。是验收测试。是“从小到从小到大大”、“由内至外由内至外”、“循序渐进循序渐进”的测试过程,体现了的测试过程,体现了“分而分而治之治之”的思想的思想 v单元测试的粒度最小,一般由开发小组采用白盒方式来测单元测试的粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合试,主要测试单元是否符合“设计设计”v集成测试界于单元测试和系统测试之间,起到集成测试界于单元测试和系统测试之间,起到“桥梁作用桥梁作用”,一般由开发小组采用白盒加黑盒的方式来测试,既要验证一般由开发小组采用白盒加黑盒的

127、方式来测试,既要验证“设计设计”又要验证又要验证“需求需求”筏永夯敦女蒋垦战是刁确会隐翘挡莆致躬方楷邪蚕桓哮琢皮甲幅蔚煤蒜谅第二测试技术第二测试技术http:/6969v系统测试的粒度最大,一般由独立测试小组采用黑盒系统测试的粒度最大,一般由独立测试小组采用黑盒方式来测试,主要测试系统是否符合方式来测试,主要测试系统是否符合“需求规格说明需求规格说明书书”v验收测试与系统测试非常相似,主要区别是测试人员验收测试与系统测试非常相似,主要区别是测试人员不同,验收测试由用户执行不同,验收测试由用户执行丘罚伙德阿菜冯磊篙藐纫杜痘钧鞋垃题陨茶僧沟凹腻嘻畜偿高挺穗摇帽鹏第二测试技术第二测试技术http:/

128、7070系统测试过程系统测试过程系统测试过程系统测试过程vv软件测试过程与整个软件开发过程基本上是平行进行的软件测试过程与整个软件开发过程基本上是平行进行的软件测试过程与整个软件开发过程基本上是平行进行的软件测试过程与整个软件开发过程基本上是平行进行的vv测试计划早在需求分析阶段就应该开始制定,其它相关工测试计划早在需求分析阶段就应该开始制定,其它相关工测试计划早在需求分析阶段就应该开始制定,其它相关工测试计划早在需求分析阶段就应该开始制定,其它相关工作,包括测试大纲的制定、测试数据的生成、测试工具的作,包括测试大纲的制定、测试数据的生成、测试工具的作,包括测试大纲的制定、测试数据的生成、测试

129、工具的作,包括测试大纲的制定、测试数据的生成、测试工具的选择和开发等,也应在测试阶段之前进行选择和开发等,也应在测试阶段之前进行选择和开发等,也应在测试阶段之前进行选择和开发等,也应在测试阶段之前进行vv充分的准备工作可以有效地克服测试的盲目性、缩短测试充分的准备工作可以有效地克服测试的盲目性、缩短测试充分的准备工作可以有效地克服测试的盲目性、缩短测试充分的准备工作可以有效地克服测试的盲目性、缩短测试周期、提高测试效率,并且起到测试文档与开发文档互查周期、提高测试效率,并且起到测试文档与开发文档互查周期、提高测试效率,并且起到测试文档与开发文档互查周期、提高测试效率,并且起到测试文档与开发文档

130、互查的作用的作用的作用的作用vv通常在编写出每一个模块之后就对它做必要的测试(单元通常在编写出每一个模块之后就对它做必要的测试(单元通常在编写出每一个模块之后就对它做必要的测试(单元通常在编写出每一个模块之后就对它做必要的测试(单元测试),编码与单元测试属于软件生存周期的同一阶段。测试),编码与单元测试属于软件生存周期的同一阶段。测试),编码与单元测试属于软件生存周期的同一阶段。测试),编码与单元测试属于软件生存周期的同一阶段。在结束这一阶段之后,对软件系统还要进行各种综合测试在结束这一阶段之后,对软件系统还要进行各种综合测试在结束这一阶段之后,对软件系统还要进行各种综合测试在结束这一阶段之后

131、,对软件系统还要进行各种综合测试伺壬芬紊冻基泻犁袁搽供蜒尚竞绣屎闭膛汽候氨甸祈葱括吊般鬃弄相段热第二测试技术第二测试技术http:/7171被测模块被测模块单元测试集成测试确认测试系统测试验收测试设计信息软件需求运行环境客户需求腾接悼坐军杀阴袱褐蜀彝苹仗钞毛帘丢袍牟馁黍生醛刊候瑞谬抖拨冗桂酶第二测试技术第二测试技术http:/7272测试流程图可以看出,软件测试的这五个过程是一种逐步测试流程图可以看出,软件测试的这五个过程是一种逐步测试流程图可以看出,软件测试的这五个过程是一种逐步测试流程图可以看出,软件测试的这五个过程是一种逐步深入的过程,互相又有交叉,同时这五个过程又是相对独深入的过程,互

132、相又有交叉,同时这五个过程又是相对独深入的过程,互相又有交叉,同时这五个过程又是相对独深入的过程,互相又有交叉,同时这五个过程又是相对独立的,每一个过程有自己的测试计划、用例、报告等。在立的,每一个过程有自己的测试计划、用例、报告等。在立的,每一个过程有自己的测试计划、用例、报告等。在立的,每一个过程有自己的测试计划、用例、报告等。在每一个过程中都必需包括拟定软件测试计划、编制软件测每一个过程中都必需包括拟定软件测试计划、编制软件测每一个过程中都必需包括拟定软件测试计划、编制软件测每一个过程中都必需包括拟定软件测试计划、编制软件测试流程、设计和生成测试用例、实施测试和生成软件问题试流程、设计和

133、生成测试用例、实施测试和生成软件问题试流程、设计和生成测试用例、实施测试和生成软件问题试流程、设计和生成测试用例、实施测试和生成软件问题报告等基本测试活动报告等基本测试活动报告等基本测试活动报告等基本测试活动奶拌矩抹钵羹奄曙铲榆觅瞬战扑骑卷科廉耻相皆先媳克块然竹西享薛哀亩第二测试技术第二测试技术http:/7373vv单元测试是对软件设计的最小单位单元测试是对软件设计的最小单位单元测试是对软件设计的最小单位单元测试是对软件设计的最小单位模块进行正确性检验模块进行正确性检验模块进行正确性检验模块进行正确性检验的测试工作,测试模块在语法、格式和逻辑上的错误的测试工作,测试模块在语法、格式和逻辑上的

134、错误的测试工作,测试模块在语法、格式和逻辑上的错误的测试工作,测试模块在语法、格式和逻辑上的错误vv使用的测试方法以详细设计为基础,了解使用的测试方法以详细设计为基础,了解使用的测试方法以详细设计为基础,了解使用的测试方法以详细设计为基础,了解I/OI/OI/OI/O条件和模块条件和模块条件和模块条件和模块的逻辑结构。先采用白盒测试法,尽可能达到穷尽测试,的逻辑结构。先采用白盒测试法,尽可能达到穷尽测试,的逻辑结构。先采用白盒测试法,尽可能达到穷尽测试,的逻辑结构。先采用白盒测试法,尽可能达到穷尽测试,然后再用黑盒测试法,使之对任何合理和不合理的输入都然后再用黑盒测试法,使之对任何合理和不合理

135、的输入都然后再用黑盒测试法,使之对任何合理和不合理的输入都然后再用黑盒测试法,使之对任何合理和不合理的输入都能够鉴别和响应能够鉴别和响应能够鉴别和响应能够鉴别和响应vv编码和调试单元测试集成测试编码和调试单元测试集成测试编码和调试单元测试集成测试编码和调试单元测试集成测试单元测试单元测试搞脐噪瘟卉渡篱暗符吓百租范帚渣氓失惧狱碘红笆烈裁涟扁迎槽宛氢薛两第二测试技术第二测试技术http:/7474vv在单元测试期间主要评价模块的下述五个特性,它们也是在单元测试期间主要评价模块的下述五个特性,它们也是在单元测试期间主要评价模块的下述五个特性,它们也是在单元测试期间主要评价模块的下述五个特性,它们也是

136、测试用例选择的重要依据:测试用例选择的重要依据:测试用例选择的重要依据:测试用例选择的重要依据:模块接口模块接口模块接口模块接口:对测试模块,是否正确无误地流入和流出:对测试模块,是否正确无误地流入和流出:对测试模块,是否正确无误地流入和流出:对测试模块,是否正确无误地流入和流出;局部数据结构局部数据结构局部数据结构局部数据结构:在模块工作过程中,其内交换数据能否保:在模块工作过程中,其内交换数据能否保:在模块工作过程中,其内交换数据能否保:在模块工作过程中,其内交换数据能否保持完整性持完整性持完整性持完整性, ,包括内部数据的内容、形式及相互关系是否正确包括内部数据的内容、形式及相互关系是否

137、正确包括内部数据的内容、形式及相互关系是否正确包括内部数据的内容、形式及相互关系是否正确;边界条件:在为限制数据加工而设置的边界处模块是否能边界条件:在为限制数据加工而设置的边界处模块是否能边界条件:在为限制数据加工而设置的边界处模块是否能边界条件:在为限制数据加工而设置的边界处模块是否能正常工作正常工作正常工作正常工作覆盖条件:模块的运行能否达到满足特定的逻辑覆盖覆盖条件:模块的运行能否达到满足特定的逻辑覆盖覆盖条件:模块的运行能否达到满足特定的逻辑覆盖覆盖条件:模块的运行能否达到满足特定的逻辑覆盖;出错处理:模块运行中发生了错误,其中的出错处理设施出错处理:模块运行中发生了错误,其中的出错

138、处理设施出错处理:模块运行中发生了错误,其中的出错处理设施出错处理:模块运行中发生了错误,其中的出错处理设施是否有效是否有效是否有效是否有效笺如睦沉估瓢兴驰卤枝岁撕摸茸飞艘筷状间俐岛计清汰及髓磐视翱盒托鹅第二测试技术第二测试技术http:/7575vv用经过单元测试的模块组装成设计所规定的软件系统的过用经过单元测试的模块组装成设计所规定的软件系统的过用经过单元测试的模块组装成设计所规定的软件系统的过用经过单元测试的模块组装成设计所规定的软件系统的过程就是程就是程就是程就是“ “集成集成集成集成” ”vv集成测试是组装软件的系统技术之一集成测试是组装软件的系统技术之一集成测试是组装软件的系统技术

139、之一集成测试是组装软件的系统技术之一vv集成测试的主要目标是要求符合实际软件结构,解决模块集成测试的主要目标是要求符合实际软件结构,解决模块集成测试的主要目标是要求符合实际软件结构,解决模块集成测试的主要目标是要求符合实际软件结构,解决模块接口的一致性问题接口的一致性问题接口的一致性问题接口的一致性问题vv例如,数据穿过模块接口时可能丢失;一模块可能对另一例如,数据穿过模块接口时可能丢失;一模块可能对另一例如,数据穿过模块接口时可能丢失;一模块可能对另一例如,数据穿过模块接口时可能丢失;一模块可能对另一模块产生副作用;子功能组装以后,可能系统总的功能达模块产生副作用;子功能组装以后,可能系统总

140、的功能达模块产生副作用;子功能组装以后,可能系统总的功能达模块产生副作用;子功能组装以后,可能系统总的功能达不到;单个模块看来是可以接受的误差,组装以后积累起不到;单个模块看来是可以接受的误差,组装以后积累起不到;单个模块看来是可以接受的误差,组装以后积累起不到;单个模块看来是可以接受的误差,组装以后积累起来的软件误差可能大到无法让人接受的程度;全程数据结来的软件误差可能大到无法让人接受的程度;全程数据结来的软件误差可能大到无法让人接受的程度;全程数据结来的软件误差可能大到无法让人接受的程度;全程数据结构可能有问题等,都是集成测试要解决的问题构可能有问题等,都是集成测试要解决的问题构可能有问题

141、等,都是集成测试要解决的问题构可能有问题等,都是集成测试要解决的问题集成测试集成测试嗓希麦肩吸陨禄疏晃虎网镑此俘迈狠逞沃轴嗜淫滓贫茬氏狗腐测瘪寓死或第二测试技术第二测试技术http:/7676vv组装测试的主要内容有:组装测试的主要内容有:组装测试的主要内容有:组装测试的主要内容有: 各模块是否无错误地连接各模块是否无错误地连接各模块是否无错误地连接各模块是否无错误地连接 能否保证数据有效传送及数据的完整性和一致性能否保证数据有效传送及数据的完整性和一致性能否保证数据有效传送及数据的完整性和一致性能否保证数据有效传送及数据的完整性和一致性 人机界面及各种通信接口能否满足设计要求人机界面及各种通

142、信接口能否满足设计要求人机界面及各种通信接口能否满足设计要求人机界面及各种通信接口能否满足设计要求 除除除除了了了了在在在在存存存存储储储储器器器器中中中中需需需需要要要要分分分分配配配配绝绝绝绝对对对对地地地地址址址址的的的的程程程程序序序序段段段段外外外外,是是是是否否否否具具具具有新定位的能力有新定位的能力有新定位的能力有新定位的能力 能否与软件需求规格说明中规定的所有设备正确联接能否与软件需求规格说明中规定的所有设备正确联接能否与软件需求规格说明中规定的所有设备正确联接能否与软件需求规格说明中规定的所有设备正确联接vv组装模块过程可以分为:组装模块过程可以分为:组装模块过程可以分为:组

143、装模块过程可以分为:坦晋墨胸旭鹅账爵渴近剩砾搂农限脱虱呀袁乖溯烂赘巫蘑筛熬丰哑檬其邪第二测试技术第二测试技术http:/7777自顶向下组装:它自顶向下组装:它自顶向下组装:它自顶向下组装:它是一个递增的组装软件结构的方法。从是一个递增的组装软件结构的方法。从是一个递增的组装软件结构的方法。从是一个递增的组装软件结构的方法。从主控模块(主程序)开始沿控制层向下移动,把模块一一主控模块(主程序)开始沿控制层向下移动,把模块一一主控模块(主程序)开始沿控制层向下移动,把模块一一主控模块(主程序)开始沿控制层向下移动,把模块一一组合起来。分两种方法:组合起来。分两种方法:组合起来。分两种方法:组合起

144、来。分两种方法:先深度:按照结构用一条主控制路径将所有模块组合起来;先深度:按照结构用一条主控制路径将所有模块组合起来;先深度:按照结构用一条主控制路径将所有模块组合起来;先深度:按照结构用一条主控制路径将所有模块组合起来;先宽度:逐层组合所有直接下属模块,在每一层水平地沿先宽度:逐层组合所有直接下属模块,在每一层水平地沿先宽度:逐层组合所有直接下属模块,在每一层水平地沿先宽度:逐层组合所有直接下属模块,在每一层水平地沿着结构移动着结构移动着结构移动着结构移动递奠去追戈虎铅詹见氰拔牧瞻滦伸蛀压孤贷咨蹦倍氨抽陆第触遁奠沂俏汕第二测试技术第二测试技术http:/7878组装过程分以下五个步骤:组装

145、过程分以下五个步骤:组装过程分以下五个步骤:组装过程分以下五个步骤: 用主控模块作为测试驱动程序,其直接下属模块用承接模用主控模块作为测试驱动程序,其直接下属模块用承接模用主控模块作为测试驱动程序,其直接下属模块用承接模用主控模块作为测试驱动程序,其直接下属模块用承接模块来代替块来代替块来代替块来代替根据所选择的集成测试法(先深度或先宽度),每次用实根据所选择的集成测试法(先深度或先宽度),每次用实根据所选择的集成测试法(先深度或先宽度),每次用实根据所选择的集成测试法(先深度或先宽度),每次用实际模块代替下述的承接模块际模块代替下述的承接模块际模块代替下述的承接模块际模块代替下述的承接模块在

146、组合每个实际模块时都要进行测试在组合每个实际模块时都要进行测试在组合每个实际模块时都要进行测试在组合每个实际模块时都要进行测试完成一组测试后再用一个实际模块代替另一个承接模块完成一组测试后再用一个实际模块代替另一个承接模块完成一组测试后再用一个实际模块代替另一个承接模块完成一组测试后再用一个实际模块代替另一个承接模块可以进行回归测试(即重新再做所有的或者部分已做过的可以进行回归测试(即重新再做所有的或者部分已做过的可以进行回归测试(即重新再做所有的或者部分已做过的可以进行回归测试(即重新再做所有的或者部分已做过的测试),以保证不引入新的错误测试),以保证不引入新的错误测试),以保证不引入新的错

147、误测试),以保证不引入新的错误锌妨沿擦篆洼粱艰斥部事央簇妇秤釉蛙棱租烛龟升夹格锚倔谰褪闷狗捐故第二测试技术第二测试技术http:/7979由底向上组装:它由底向上组装:它由底向上组装:它由底向上组装:它是从端点模块即软件结构中不调用其他是从端点模块即软件结构中不调用其他是从端点模块即软件结构中不调用其他是从端点模块即软件结构中不调用其他模块的模块开始进行组装以及测试。在逐步处理上层模块模块的模块开始进行组装以及测试。在逐步处理上层模块模块的模块开始进行组装以及测试。在逐步处理上层模块模块的模块开始进行组装以及测试。在逐步处理上层模块时所需要的子模块总是可以得到的,因此不需要承接模块。时所需要的

148、子模块总是可以得到的,因此不需要承接模块。时所需要的子模块总是可以得到的,因此不需要承接模块。时所需要的子模块总是可以得到的,因此不需要承接模块。由底向上组装可以按照以下步骤:由底向上组装可以按照以下步骤:由底向上组装可以按照以下步骤:由底向上组装可以按照以下步骤:将低层模块组合成实现某个特定的软件子功能的簇将低层模块组合成实现某个特定的软件子功能的簇将低层模块组合成实现某个特定的软件子功能的簇将低层模块组合成实现某个特定的软件子功能的簇需要编写一个驱动程序作为测试的控制程序,用来协调测需要编写一个驱动程序作为测试的控制程序,用来协调测需要编写一个驱动程序作为测试的控制程序,用来协调测需要编写

149、一个驱动程序作为测试的控制程序,用来协调测试用例的输入和输出试用例的输入和输出试用例的输入和输出试用例的输入和输出测试模块簇测试模块簇测试模块簇测试模块簇去掉小簇的驱动程序,将几个小簇合并成大簇,再重复去掉小簇的驱动程序,将几个小簇合并成大簇,再重复去掉小簇的驱动程序,将几个小簇合并成大簇,再重复去掉小簇的驱动程序,将几个小簇合并成大簇,再重复步,这样沿着软件结构逐步向上组装步,这样沿着软件结构逐步向上组装步,这样沿着软件结构逐步向上组装步,这样沿着软件结构逐步向上组装罕屿役瘟统丑婉仑棵瑶服瞪狱纲匿猛挪坍绕醉舰刀柜誊蛰尧怨汗蓖泽腊眩第二测试技术第二测试技术http:/8080vv集成测试通过以

150、后,软件已经组装成一个完整的软件包,集成测试通过以后,软件已经组装成一个完整的软件包,集成测试通过以后,软件已经组装成一个完整的软件包,集成测试通过以后,软件已经组装成一个完整的软件包,这时就可以进行确认测试,这时就可以进行确认测试,这时就可以进行确认测试,这时就可以进行确认测试,用确认测试用例测试程序,将用确认测试用例测试程序,将用确认测试用例测试程序,将用确认测试用例测试程序,将结果与期望值比较,测试软件是否满足需求规格说明的要结果与期望值比较,测试软件是否满足需求规格说明的要结果与期望值比较,测试软件是否满足需求规格说明的要结果与期望值比较,测试软件是否满足需求规格说明的要求,求,求,求

151、,即验证软件功能与用户要求的一致性即验证软件功能与用户要求的一致性即验证软件功能与用户要求的一致性即验证软件功能与用户要求的一致性vv在软件需求说明书的有效性标准中,详细定义了用户对软在软件需求说明书的有效性标准中,详细定义了用户对软在软件需求说明书的有效性标准中,详细定义了用户对软在软件需求说明书的有效性标准中,详细定义了用户对软件的合理要求,其中包含的信息是有效性测试的基础和根件的合理要求,其中包含的信息是有效性测试的基础和根件的合理要求,其中包含的信息是有效性测试的基础和根件的合理要求,其中包含的信息是有效性测试的基础和根据。测试计划给出了必须进行的测试类型,测试过程确定据。测试计划给出

152、了必须进行的测试类型,测试过程确定据。测试计划给出了必须进行的测试类型,测试过程确定据。测试计划给出了必须进行的测试类型,测试过程确定了验证软件有效性的特殊测试用例。此外,还必须对文件了验证软件有效性的特殊测试用例。此外,还必须对文件了验证软件有效性的特殊测试用例。此外,还必须对文件了验证软件有效性的特殊测试用例。此外,还必须对文件资料是否完整正确,软件的易移植性、兼容性、出错自动资料是否完整正确,软件的易移植性、兼容性、出错自动资料是否完整正确,软件的易移植性、兼容性、出错自动资料是否完整正确,软件的易移植性、兼容性、出错自动恢复功能和易维护性进行确认恢复功能和易维护性进行确认恢复功能和易维

153、护性进行确认恢复功能和易维护性进行确认确认测试确认测试牛庸啤氟殉夕支疹框义晴豪偏烟敦逃沏乖责掌硬岔争释尔患甚殃握松跺瞎第二测试技术第二测试技术http:/8181vv在在在在使使使使用用用用测测测测试试试试用用用用例例例例完完完完成成成成有有有有效效效效性性性性测测测测试试试试以以以以后后后后,如如如如果果果果发发发发现现现现软软软软件件件件的的的的功功功功能能能能和和和和性性性性能能能能与与与与软软软软件件件件需需需需求求求求说说说说明明明明有有有有差差差差距距距距时时时时,需需需需要要要要列列列列出出出出缺缺缺缺陷陷陷陷表表表表。在在在在软软软软件件件件工工工工程程程程的的的的这这这这个个

154、个个阶阶阶阶段段段段若若若若发发发发现现现现需需需需求求求求不不不不一一一一致致致致,修修修修改改改改的的的的工工工工作作作作量量量量往往往往往往往往是是是是很很很很大大大大的的的的,不不不不大大大大可可可可能能能能在在在在预预预预定定定定进进进进度度度度完完完完成成成成期期期期限限限限之之之之前前前前得得得得到到到到改改改改正正正正,往往要与用户协商解决往往要与用户协商解决往往要与用户协商解决往往要与用户协商解决vv 确认测试的主要内容有:确认测试的主要内容有:确认测试的主要内容有:确认测试的主要内容有: 功能方面应测试系统的输入、处理、输出是否满足需求;功能方面应测试系统的输入、处理、输出

155、是否满足需求;功能方面应测试系统的输入、处理、输出是否满足需求;功能方面应测试系统的输入、处理、输出是否满足需求; 性性性性能能能能方方方方面面面面应应应应测测测测试试试试系系系系统统统统的的的的数数数数据据据据精精精精确确确确度度度度、时时时时间间间间特特特特性性性性(如如如如响响响响应应应应时时时时间间间间、更更更更新新新新处处处处理理理理时时时时间间间间、数数数数据据据据转转转转换换换换及及及及传传传传输输输输时时时时间间间间等等等等)、适适适适应应应应性性性性(在在在在操操操操作作作作方方方方式式式式,运运运运行行行行环环环环境境境境与与与与其其其其他他他他软软软软件件件件的的的的接接

156、接接口口口口发发发发生生生生变变变变化化化化时,应具备的适应能力)是否满足设计要求时,应具备的适应能力)是否满足设计要求时,应具备的适应能力)是否满足设计要求时,应具备的适应能力)是否满足设计要求 其其其其他他他他限限限限制制制制条条条条件件件件的的的的测测测测试试试试,如如如如可可可可使使使使用用用用性性性性、安安安安全全全全保保保保密密密密性性性性、可可可可维维维维护性、可移植性、故障处理能力等护性、可移植性、故障处理能力等护性、可移植性、故障处理能力等护性、可移植性、故障处理能力等梅梅哑哉运哑趟累履汲记赞宜下笛汞离坚燎社插勘笔尘定株镭炸金九日榔第二测试技术第二测试技术http:/8282

157、vv系统测试是将通过确认测试的软件作为整个计算机系统的系统测试是将通过确认测试的软件作为整个计算机系统的系统测试是将通过确认测试的软件作为整个计算机系统的系统测试是将通过确认测试的软件作为整个计算机系统的一个元素,与硬件、外设等等其他元素结合在一起,对软一个元素,与硬件、外设等等其他元素结合在一起,对软一个元素,与硬件、外设等等其他元素结合在一起,对软一个元素,与硬件、外设等等其他元素结合在一起,对软件系统进行整体测试和有效性测试。一般相当大的工作量件系统进行整体测试和有效性测试。一般相当大的工作量件系统进行整体测试和有效性测试。一般相当大的工作量件系统进行整体测试和有效性测试。一般相当大的工

158、作量集中在软件系统的某些模块与计算机系统中有关设备打交集中在软件系统的某些模块与计算机系统中有关设备打交集中在软件系统的某些模块与计算机系统中有关设备打交集中在软件系统的某些模块与计算机系统中有关设备打交道时的默契配合方面道时的默契配合方面道时的默契配合方面道时的默契配合方面vv例如:当软件系统中调用打印机这种常见输出外设时,软例如:当软件系统中调用打印机这种常见输出外设时,软例如:当软件系统中调用打印机这种常见输出外设时,软例如:当软件系统中调用打印机这种常见输出外设时,软件系统如何通过计算机系统平台的控制去合理驱动、选择、件系统如何通过计算机系统平台的控制去合理驱动、选择、件系统如何通过计

159、算机系统平台的控制去合理驱动、选择、件系统如何通过计算机系统平台的控制去合理驱动、选择、设置、使用打印机。又如,新的软件系统中的一些文件名设置、使用打印机。又如,新的软件系统中的一些文件名设置、使用打印机。又如,新的软件系统中的一些文件名设置、使用打印机。又如,新的软件系统中的一些文件名和计算机系统中别的软件系统中的一些文件完全同名时,和计算机系统中别的软件系统中的一些文件完全同名时,和计算机系统中别的软件系统中的一些文件完全同名时,和计算机系统中别的软件系统中的一些文件完全同名时,两种软件系统之间如何实现相互协调操作。再如,新的软两种软件系统之间如何实现相互协调操作。再如,新的软两种软件系统

160、之间如何实现相互协调操作。再如,新的软两种软件系统之间如何实现相互协调操作。再如,新的软件系统和别的软件系统对系统配置和系统操作环境有矛盾件系统和别的软件系统对系统配置和系统操作环境有矛盾件系统和别的软件系统对系统配置和系统操作环境有矛盾件系统和别的软件系统对系统配置和系统操作环境有矛盾时如何相互协调。如此等等的问题都是系统测试要解决的时如何相互协调。如此等等的问题都是系统测试要解决的时如何相互协调。如此等等的问题都是系统测试要解决的时如何相互协调。如此等等的问题都是系统测试要解决的问题问题问题问题系统测试系统测试糕遵典伐驼地卞壬就抚盘晚曳举狈迪键致敛肥喻瘪谅操郭碑纠溢直濒咀把第二测试技术第二

161、测试技术http:/8383vv系统测试的内容应包括对各子系统或分系统间的接口正确系统测试的内容应包括对各子系统或分系统间的接口正确系统测试的内容应包括对各子系统或分系统间的接口正确系统测试的内容应包括对各子系统或分系统间的接口正确性的检查和对系统的功能、性能的测试。系统测试一般通性的检查和对系统的功能、性能的测试。系统测试一般通性的检查和对系统的功能、性能的测试。系统测试一般通性的检查和对系统的功能、性能的测试。系统测试一般通过以下几种测试来完成:过以下几种测试来完成:过以下几种测试来完成:过以下几种测试来完成:恢复测试。恢复测试是要采取各种人工方法使软件出错,恢复测试。恢复测试是要采取各种

162、人工方法使软件出错,恢复测试。恢复测试是要采取各种人工方法使软件出错,恢复测试。恢复测试是要采取各种人工方法使软件出错,而不是能正常工作,进而检验系统的恢复能力。如果系统而不是能正常工作,进而检验系统的恢复能力。如果系统而不是能正常工作,进而检验系统的恢复能力。如果系统而不是能正常工作,进而检验系统的恢复能力。如果系统本身能够自动地进行恢复,则应检验:重新初始化、检验本身能够自动地进行恢复,则应检验:重新初始化、检验本身能够自动地进行恢复,则应检验:重新初始化、检验本身能够自动地进行恢复,则应检验:重新初始化、检验点设置机构、数据以及重新启动是否正确。如果这一恢复点设置机构、数据以及重新启动是

163、否正确。如果这一恢复点设置机构、数据以及重新启动是否正确。如果这一恢复点设置机构、数据以及重新启动是否正确。如果这一恢复需要人工干预,则应考虑平均修复时间是否在限定的范围需要人工干预,则应考虑平均修复时间是否在限定的范围需要人工干预,则应考虑平均修复时间是否在限定的范围需要人工干预,则应考虑平均修复时间是否在限定的范围内。结合起来进行。为记录性能需要再安装必要的仪表或内。结合起来进行。为记录性能需要再安装必要的仪表或内。结合起来进行。为记录性能需要再安装必要的仪表或内。结合起来进行。为记录性能需要再安装必要的仪表或度量性能的软件度量性能的软件度量性能的软件度量性能的软件擂害胃妆昏汾馏啃疯惊羹谍

164、炊亢导尘砸岭楚妖逐邑陡绩性藤铬忌募找毅昌第二测试技术第二测试技术http:/8484安全测试。安全测试就是设置一些企图突破系统安全保密安全测试。安全测试就是设置一些企图突破系统安全保密安全测试。安全测试就是设置一些企图突破系统安全保密安全测试。安全测试就是设置一些企图突破系统安全保密措施的测试用例,检验系统是否有安全保密的漏洞。对某措施的测试用例,检验系统是否有安全保密的漏洞。对某措施的测试用例,检验系统是否有安全保密的漏洞。对某措施的测试用例,检验系统是否有安全保密的漏洞。对某些与人身、机器和环境的安全有关的软件,还需特别测试些与人身、机器和环境的安全有关的软件,还需特别测试些与人身、机器和

165、环境的安全有关的软件,还需特别测试些与人身、机器和环境的安全有关的软件,还需特别测试其保护措施和防护手段的有效性和可靠性其保护措施和防护手段的有效性和可靠性其保护措施和防护手段的有效性和可靠性其保护措施和防护手段的有效性和可靠性强度测试。强度测试检验系统的能力最高能达到什么实际强度测试。强度测试检验系统的能力最高能达到什么实际强度测试。强度测试检验系统的能力最高能达到什么实际强度测试。强度测试检验系统的能力最高能达到什么实际限度。在强度测试中程序被强制在它的设计能力极限状态限度。在强度测试中程序被强制在它的设计能力极限状态限度。在强度测试中程序被强制在它的设计能力极限状态限度。在强度测试中程序

166、被强制在它的设计能力极限状态下运行,进而超出极限,以验证在超出临界状态下性能降下运行,进而超出极限,以验证在超出临界状态下性能降下运行,进而超出极限,以验证在超出临界状态下性能降下运行,进而超出极限,以验证在超出临界状态下性能降低不是灾难性的低不是灾难性的低不是灾难性的低不是灾难性的性能测试。性能测试检验安装在系统内的软件运行性能,性能测试。性能测试检验安装在系统内的软件运行性能,性能测试。性能测试检验安装在系统内的软件运行性能,性能测试。性能测试检验安装在系统内的软件运行性能,这种测试需与强度测试结合起来进行。为记录性能需要再这种测试需与强度测试结合起来进行。为记录性能需要再这种测试需与强度

167、测试结合起来进行。为记录性能需要再这种测试需与强度测试结合起来进行。为记录性能需要再安装必要的仪表或度量性能的软件安装必要的仪表或度量性能的软件安装必要的仪表或度量性能的软件安装必要的仪表或度量性能的软件蓑条霖啦耘睹翟旭跃仑俏尝浮魂簿捣象约湃傻匆祟硒见篓扔固砍吴耸驾地第二测试技术第二测试技术http:/8585vv系统测试完成后,并使系统试运行了预定的时间,企业应系统测试完成后,并使系统试运行了预定的时间,企业应系统测试完成后,并使系统试运行了预定的时间,企业应系统测试完成后,并使系统试运行了预定的时间,企业应进行验收测试。确认已开发的软件能否达到验收标准,包进行验收测试。确认已开发的软件能否

168、达到验收标准,包进行验收测试。确认已开发的软件能否达到验收标准,包进行验收测试。确认已开发的软件能否达到验收标准,包括对测试有关的文档资料的审查验收和对程序测试验收。括对测试有关的文档资料的审查验收和对程序测试验收。括对测试有关的文档资料的审查验收和对程序测试验收。括对测试有关的文档资料的审查验收和对程序测试验收。对于一些关键性软件,还必须按照合同一些严格条款进行对于一些关键性软件,还必须按照合同一些严格条款进行对于一些关键性软件,还必须按照合同一些严格条款进行对于一些关键性软件,还必须按照合同一些严格条款进行特殊测试,如强化测试和性能降级执行方式测试等,验收特殊测试,如强化测试和性能降级执行

169、方式测试等,验收特殊测试,如强化测试和性能降级执行方式测试等,验收特殊测试,如强化测试和性能降级执行方式测试等,验收测试应在软件投入运行后所处的实际生产环境下进行测试应在软件投入运行后所处的实际生产环境下进行测试应在软件投入运行后所处的实际生产环境下进行测试应在软件投入运行后所处的实际生产环境下进行vv验收测试的目的是测试程序的操作和合同规定的要求是否验收测试的目的是测试程序的操作和合同规定的要求是否验收测试的目的是测试程序的操作和合同规定的要求是否验收测试的目的是测试程序的操作和合同规定的要求是否一致。通常以用户为主体来进行,由用户设计测试用例,一致。通常以用户为主体来进行,由用户设计测试用

170、例,一致。通常以用户为主体来进行,由用户设计测试用例,一致。通常以用户为主体来进行,由用户设计测试用例,确定系统功能和性能的可接受性,按照合同中预定的验收确定系统功能和性能的可接受性,按照合同中预定的验收确定系统功能和性能的可接受性,按照合同中预定的验收确定系统功能和性能的可接受性,按照合同中预定的验收原则进行的测试,这是一种非常实用的测试,实质上就是原则进行的测试,这是一种非常实用的测试,实质上就是原则进行的测试,这是一种非常实用的测试,实质上就是原则进行的测试,这是一种非常实用的测试,实质上就是用户用大量的真实数据试用软件系统用户用大量的真实数据试用软件系统用户用大量的真实数据试用软件系统

171、用户用大量的真实数据试用软件系统验收测试验收测试忽聘捎枷矢搂虾夯司见素袄娩鸟痛酝开起睛靳苇引拙佬疗威桨余苑西疤瓮第二测试技术第二测试技术http:/8686文档资料的审查验收。所有与测试有关的文档资料是否编文档资料的审查验收。所有与测试有关的文档资料是否编文档资料的审查验收。所有与测试有关的文档资料是否编文档资料的审查验收。所有与测试有关的文档资料是否编写齐全,并得到分类编写,这些文档资料主要包括各测试写齐全,并得到分类编写,这些文档资料主要包括各测试写齐全,并得到分类编写,这些文档资料主要包括各测试写齐全,并得到分类编写,这些文档资料主要包括各测试阶段的测试计划、测试申请及测试报告等阶段的测

172、试计划、测试申请及测试报告等阶段的测试计划、测试申请及测试报告等阶段的测试计划、测试申请及测试报告等余量要求。必须实际考察计算机存储空间,输入、输出通余量要求。必须实际考察计算机存储空间,输入、输出通余量要求。必须实际考察计算机存储空间,输入、输出通余量要求。必须实际考察计算机存储空间,输入、输出通道和批处理间接使用情况,要保持至少有道和批处理间接使用情况,要保持至少有道和批处理间接使用情况,要保持至少有道和批处理间接使用情况,要保持至少有20%20%20%20%的余量的余量的余量的余量功能测试。必须根据需求规格说明书中规定的功能,对被功能测试。必须根据需求规格说明书中规定的功能,对被功能测试

173、。必须根据需求规格说明书中规定的功能,对被功能测试。必须根据需求规格说明书中规定的功能,对被验收的软件逐项进行测试,以确认软件是否具备规定的各验收的软件逐项进行测试,以确认软件是否具备规定的各验收的软件逐项进行测试,以确认软件是否具备规定的各验收的软件逐项进行测试,以确认软件是否具备规定的各项功能项功能项功能项功能性性性性能能能能测测测测试试试试。必必必必须须须须根根根根据据据据需需需需求求求求规规规规格格格格说说说说明明明明书书书书中中中中规规规规定定定定的的的的性性性性能能能能,对对对对被被被被验验验验收收收收的的的的软软软软件件件件进进进进行行行行测测测测试试试试,以以以以确确确确认认认

174、认该该该该软软软软件件件件的的的的性性性性能能能能是是是是否否否否得得得得到到到到满满满满足足足足,开开开开发发发发单单单单位位位位应应应应提提提提交交交交开开开开发发发发阶阶阶阶段段段段内内内内各各各各测测测测试试试试阶阶阶阶段段段段所所所所作作作作的的的的测测测测试试试试分分分分析析析析报报报报告告告告,包包包包括括括括测测测测试试试试中中中中发发发发现现现现的的的的错错错错误误误误类类类类型型型型,以以以以及及及及修修修修正正正正活活活活动动动动情情情情况况况况。开开开开发单位必须设计性能测试用例,并预先征得用户的认可发单位必须设计性能测试用例,并预先征得用户的认可发单位必须设计性能测试

175、用例,并预先征得用户的认可发单位必须设计性能测试用例,并预先征得用户的认可烬梳巳暂茁氛廷蒋饥览瞒刀铬宅磺越颗伞输孝锚做掷蒸在取比吧阉渺渺阶第二测试技术第二测试技术http:/8787强强强强化化化化测测测测试试试试。强强强强化化化化测测测测试试试试必必必必须须须须按按按按照照照照 GB8566-88GB8566-88GB8566-88GB8566-88计计计计算算算算机机机机软软软软件件件件开开开开发发发发规规规规范范范范中中中中的的的的强强强强化化化化测测测测试试试试条条条条款款款款进进进进行行行行。开开开开发发发发单单单单位位位位必必必必须须须须设设设设计计计计强强强强化化化化测测测测试试

176、试试用用用用例例例例,其其其其中中中中应应应应包包包包括括括括典典典典型型型型的的的的运运运运行行行行环环环环境境境境、所所所所有有有有的的的的运运运运行行行行方方方方式式式式,以及在系统运行期可能发生的其他情况以及在系统运行期可能发生的其他情况以及在系统运行期可能发生的其他情况以及在系统运行期可能发生的其他情况性性性性能能能能降降降降级级级级执执执执行行行行方方方方式式式式测测测测试试试试。在在在在某某某某些些些些设设设设备备备备或或或或程程程程序序序序发发发发生生生生故故故故障障障障时时时时,对对对对于于于于允允允允许许许许降降降降级级级级运运运运行行行行的的的的系系系系统统统统,必必必必

177、须须须须确确确确定定定定经经经经用用用用户户户户批批批批准准准准的的的的能能能能够够够够安安安安全全全全完完完完成成成成的的的的性性性性能能能能降降降降级级级级执执执执行行行行方方方方式式式式,开开开开发发发发单单单单位位位位必必必必须须须须按按按按照照照照用用用用户户户户指指指指定定定定的的的的所所所所有有有有性性性性能能能能降降降降级级级级执执执执行行行行方方方方式式式式或或或或性性性性能能能能降降降降级级级级地地地地方方方方式式式式组组组组合合合合来来来来设设设设计计计计测测测测试试试试用用用用例例例例,应应应应设设设设定定定定典典典典型型型型的的的的错错错错误误误误原原原原因因因因和和

178、和和所所所所导导导导致致致致的的的的性性性性能能能能降降降降级级级级执执执执行行行行方方方方式式式式。开开开开发发发发单单单单位位位位必必必必须须须须确确确确保保保保测测测测试试试试结结结结果果果果与与与与需需需需求求求求规规规规格格格格说说说说明明明明中中中中包包包包括括括括的所有运行性能需求一致的所有运行性能需求一致的所有运行性能需求一致的所有运行性能需求一致安安安安装装装装测测测测试试试试。安安安安装装装装测测测测试试试试的的的的目目目目的的的的不不不不是是是是检检检检查查查查程程程程序序序序的的的的错错错错误误误误,而而而而是是是是检检检检查查查查软软软软件件件件安安安安装装装装时时时

179、时产产产产生生生生的的的的问问问问题题题题,即即即即程程程程序序序序和和和和库库库库、文文文文件件件件系系系系统统统统、配配配配置置置置管理系统的接口有什么问题管理系统的接口有什么问题管理系统的接口有什么问题管理系统的接口有什么问题卖防究秘钙衣圆后芝羔婿胡看洞埂培稳抹囤淖储熊妻霓焚焉沁显啥瞻都酱第二测试技术第二测试技术http:/8888测试阶段测试阶段主要依据主要依据测试人员、测试方式测试人员、测试方式主要测试内容主要测试内容单元测试单元测试系统设计系统设计文档文档由开发小组执行白盒由开发小组执行白盒测试测试接口测试、路径测试接口测试、路径测试集成测试集成测试系统设计系统设计文档文档需求文档

180、需求文档由开发小组执行白盒由开发小组执行白盒测试和黑盒测试测试和黑盒测试接口测试、路径测试接口测试、路径测试功能测试、性能测试功能测试、性能测试系统测试系统测试需求文档需求文档由独立测试小组执行由独立测试小组执行黑盒测试黑盒测试功能测试、健壮性测试、功能测试、健壮性测试、性能测试、用户界面测性能测试、用户界面测试、安全性测试、压力试、安全性测试、压力测试、可靠性测试、安测试、可靠性测试、安装装/反安装测试反安装测试验收测试验收测试需求文档需求文档由用户执行黑盒测试由用户执行黑盒测试测试阶段对应表测试阶段对应表测试阶段对应表测试阶段对应表但狭亢降些档怯晦蹲绘侦兑扮哎舅页俱祭毋职蓄异嘴辈批母镶靠指

181、捷杭涯第二测试技术第二测试技术http:/8989v测试内容一般包含:测试内容一般包含:接口与路径测试接口与路径测试功能测试功能测试健壮性测试健壮性测试性能测试性能测试用户界面测试用户界面测试安全性测试安全性测试压力测试压力测试可靠性测试可靠性测试安装安装/ /反安装测试反安装测试测试内容测试内容测试内容测试内容每谰常享瘦搐担魔碱肿锄廷砒臣痪饺聊牟做擒蚌导增脉蕉日桶右瞧席瘴穆第二测试技术第二测试技术http:/9090v接口测试:数据一般通过接口输入和输出,接口测试接口测试:数据一般通过接口输入和输出,接口测试一般是白盒测试的第一步一般是白盒测试的第一步输入参数有输入参数有“典型值典型值”、“

182、边界值边界值”、“异常值异常值”输出包括函数的返回值和输出参数输出包括函数的返回值和输出参数实际输出与期望的输出不一致,那么说明程序有错误实际输出与期望的输出不一致,那么说明程序有错误v一个函数体内的语句可能只有十几条,但逻辑路径可一个函数体内的语句可能只有十几条,但逻辑路径可能有成千上万条。所以应该根据经验选择关键的路径能有成千上万条。所以应该根据经验选择关键的路径测试测试接口与路径测试接口与路径测试接口与路径测试接口与路径测试郭殷果蕴痊元樟暖添蒙遮擂烬拘究佑淄痞桩重宝蛇虾磊坛运先鳞糯聘瞧郴第二测试技术第二测试技术http:/9191v路径测试的检查表:路径测试的检查表:数据类型、变量值、逻

183、辑判断、循环、内存管理、文件数据类型、变量值、逻辑判断、循环、内存管理、文件I/OI/O、错误处理、错误处理 v预防一些重要的路径没有被测试的措施有:预防一些重要的路径没有被测试的措施有:观察是否有程序语句从来没有被执行过观察是否有程序语句从来没有被执行过要特别留意函数体内的错误处理程序块要特别留意函数体内的错误处理程序块概瓷翁蹲姻框昼鹰氰习浪椭产抨倾宗致疗饵迅绷囚弊申叫暑萨娱烧宽漳庄第二测试技术第二测试技术http:/9292v接口与路径测试用例的参考模板接口与路径测试用例的参考模板藻在嘉于找掸茵磐肩漏卑保绵唾洽竭旧谆胜灭颧萤享造蚌谋怎垫腆弟徒蚌第二测试技术第二测试技术http:/9393v

184、功能功能测试的基本方法是构造一些合理输入(在需求范围之测试的基本方法是构造一些合理输入(在需求范围之内),检查输出是否与期望的相同。如果两者不一致,即内),检查输出是否与期望的相同。如果两者不一致,即表明功能有误表明功能有误v难点在于如何构造有效的输入难点在于如何构造有效的输入功能测试功能测试功能测试功能测试蛆臀欲剖袄牌捏沂牌爹蹦鹰竹喂暂师虱俗赘仇架濒蠢澎涨茅必训贬泞讣琶第二测试技术第二测试技术http:/9494v功能功能测试的测试方法:等价划分法和边界值分析法测试的测试方法:等价划分法和边界值分析法等价划分是指把输入空间划分为几个等价划分是指把输入空间划分为几个“等价区间等价区间”,在每个

185、,在每个“等价区间等价区间”中只需要测试一个典型值就可以了。等价划分中只需要测试一个典型值就可以了。等价划分法来源于人们的直觉与经验,可令测试事半功倍法来源于人们的直觉与经验,可令测试事半功倍“缺陷遗漏在角落里,聚集在边界上缺陷遗漏在角落里,聚集在边界上”。边界值测试法是对。边界值测试法是对等价划分法的补充。如果等价划分法的补充。如果A A和和B B是输入空间的边界值,那么是输入空间的边界值,那么除了典型值外还要用除了典型值外还要用A A和和B B作为测试用例作为测试用例饰兔痘鹿技惹舰折贱轿吨报煌沤挺桑赤杠缺赊值湘稚樱析坦枝釜罗斥童母第二测试技术第二测试技术http:/9595v功能功能测试测

186、试用例的参考模板用例的参考模板守嫁屑碍监批霞瘩切蓬侥菠芦氟厨造艘衬捶雇宰栈鸥集哦捶茹曰幕丰触迸第二测试技术第二测试技术http:/9696v性能性能测试即测试软件处理事务的速度,一是为了检验性测试即测试软件处理事务的速度,一是为了检验性能是否符合需求能是否符合需求, ,二是为了得到某些性能数据供人们参考二是为了得到某些性能数据供人们参考v绝对值考虑:如数据送输速率是每秒多少比特。绝对值考虑:如数据送输速率是每秒多少比特。 “相对相对值值”考虑:如某个软件比另一个软件快多少倍考虑:如某个软件比另一个软件快多少倍v性能测试中考虑运行环境的影响:例如网络环境、计算性能测试中考虑运行环境的影响:例如网

187、络环境、计算机主频机主频, ,总线结构和外部设备都可能影响软件的运行速度总线结构和外部设备都可能影响软件的运行速度性能测试性能测试性能测试性能测试箱汉稿土沪蚤陵牡校莉羞俘入翌灿抉耪撵祝疹瞄衷檄益消萤杀偏藕嗜吟绘第二测试技术第二测试技术http:/9797v性能性能测试的一些注意事项:测试的一些注意事项:应当编写一段程序用于计算时间以及相关数据应当编写一段程序用于计算时间以及相关数据应当测试软件在标准配置和最低配置下的性能应当测试软件在标准配置和最低配置下的性能应当关闭那些消耗内存、占用应当关闭那些消耗内存、占用CPUCPU的其它应用软件(如杀的其它应用软件(如杀毒软件)毒软件)应当分档记录。例

188、如传输文件的容量从应当分档记录。例如传输文件的容量从100K100K到到1M1M可以分可以分成若干等级成若干等级同一种输入情况在不同的时间可能得到不同的性能数据,同一种输入情况在不同的时间可能得到不同的性能数据,可以取其平均值可以取其平均值苔阁烩戈池骏梯肺斋暴屎该啄诲狙终枚义札篓酮哎弦吏脖苗映成疡芋老乐第二测试技术第二测试技术http:/9898v性能测试性能测试用例的参考模板用例的参考模板身莆贤汽墅菊喊翘啄食背嘶等应池矢耸傈征池妊傣蜒夺喝樱汛攀导矫切咬第二测试技术第二测试技术http:/9999v压力压力测试也叫负荷测试,即获取系统能正常运行的极限状态测试也叫负荷测试,即获取系统能正常运行的

189、极限状态v压力测试的主要任务是:构造正确的输入,使劲折腾系统却压力测试的主要任务是:构造正确的输入,使劲折腾系统却让它刚好不瘫痪让它刚好不瘫痪v压力测试的一个变种是敏感测试。在某种情况下,微小的输压力测试的一个变种是敏感测试。在某种情况下,微小的输入变动会导致系统的表现(如性能)发生急剧的变化入变动会导致系统的表现(如性能)发生急剧的变化压力测试压力测试压力测试压力测试极绎唾魔鸡妊抽淋翰线誊牢渣艳清砖嗓孺世者造涕取矫毅辞坛具棠蚤务米第二测试技术第二测试技术http:/100100v压力测试用例的参考模板压力测试用例的参考模板残姚垛著宫熙攒吁赏萧茸臼所被腊鹰疆泰祷钒捅顿撂艇茫导藏治瞪慷梳末第二测

190、试技术第二测试技术http:/101101v健壮性是指在异常情况下,软件还能正常运行的能力健壮性是指在异常情况下,软件还能正常运行的能力v容错测试:构造一些不合理的输入来引诱软件出错容错测试:构造一些不合理的输入来引诱软件出错输入错误的数据类型输入错误的数据类型输入定义域之外的数值输入定义域之外的数值“大猩猩大猩猩”测试法就是使用粗暴的方法测试法就是使用粗暴的方法v恢复测试:恢复测试:系统能否重新运行系统能否重新运行有无重要的数据丢失有无重要的数据丢失是否毁坏了其它相关的软件硬件是否毁坏了其它相关的软件硬件健壮性测试健壮性测试哥囱摇酸脾屋脯拜乃菜娱讫泞灰抖骇唁屠喻叼抨彻涨琵拇富投皇番诛贪爬第二

191、测试技术第二测试技术http:/102102v图形用户界面测试的重点:图形用户界面测试的重点:正确性正确性易用性易用性视觉效果视觉效果用户界面测试用户界面测试外邢具呜嫉垣思碑眉苞剥劫两甸纸疵鸿姆钎瑞论盅急熙差旧底兼镜钵凝散第二测试技术第二测试技术http:/103103v信息安全性是指防止系统被非法入侵的能力信息安全性是指防止系统被非法入侵的能力v既属于技术问题又属于管理问题既属于技术问题又属于管理问题v测试步骤:测试步骤:为非法入侵设立目标为非法入侵设立目标让人扮演黑客,找出漏洞让人扮演黑客,找出漏洞改正漏洞改正漏洞信息安全测试信息安全测试痴吟享剖税门表还欧水这膏灵用籽酵佐犁硷垂瑚妄厨淘侦募

192、晃财讲谩詹庐第二测试技术第二测试技术http:/104104v可靠性指在一定环境下、在给定时间内、系统不发生故障的可靠性指在一定环境下、在给定时间内、系统不发生故障的概率概率v实用办法:让用户使用该系统,记录每一次发生故障的时刻实用办法:让用户使用该系统,记录每一次发生故障的时刻可靠性测试可靠性测试癣扩烙珍瓷樱址茄怖帘挨废尧喇浆建仑掸炮蹬翼恶趣联屈召突奠氧概措峻第二测试技术第二测试技术http:/105105v安装安装/反安装测试的目的:避免反安装测试的目的:避免“大风浪都挺过来了,却在阴大风浪都挺过来了,却在阴沟里面翻了船沟里面翻了船”v主要测试工作:主要测试工作:至少在标准配置和最低配置两

193、种环境下测试至少在标准配置和最低配置两种环境下测试如果有安装界面,应该尝试各种选项,如选择如果有安装界面,应该尝试各种选项,如选择“全部全部”、“自自定义定义”、“升级升级”安装和反安装测试安装和反安装测试畴泼逞咨伐即铱语凭拍峰奖铝观跨骇敛雾篓哀姿泪左招芭徐湖忻疗早幻菜第二测试技术第二测试技术http:/106106v问题:有了问题:有了“黑盒黑盒”测试为什么还要测试为什么还要“白盒白盒”测试?测试?回答:前者只能观察软件的外部表现,后者能发现程序隐患回答:前者只能观察软件的外部表现,后者能发现程序隐患v问题:由于单元测试要写测试驱动程序,非常麻烦,能否等问题:由于单元测试要写测试驱动程序,非

194、常麻烦,能否等到整个系统全部开发完后,再集中精力进行一次性地到整个系统全部开发完后,再集中精力进行一次性地单元测试呢?单元测试呢? 回答:如果这样做,缺陷会越积越多并且分布更广、隐藏更回答:如果这样做,缺陷会越积越多并且分布更广、隐藏更深,反而导致测试与改错的代价大大增加深,反而导致测试与改错的代价大大增加第六节测试问题的分类和比较第六节测试问题的分类和比较汹柑履赠霸婪舱嵌汰若钠毡魏士乍僧怂辕农决蹋橙硫桃拇灶调登耍顺套谤第二测试技术第二测试技术http:/107107v问题:如果每个单元都通过了测试,把它们集成一起难道问题:如果每个单元都通过了测试,把它们集成一起难道会有什么不妥吗?集成测试是

195、否多此一举?会有什么不妥吗?集成测试是否多此一举?回答:把回答:把N N个单元集成一起肯定靠接口耦合,这时可能会产个单元集成一起肯定靠接口耦合,这时可能会产生在单元测试中无法发现的问题,所以集成测试是生在单元测试中无法发现的问题,所以集成测试是必要的必要的v问题:在集成测试的时候,已经对一些子系统进行了功问题:在集成测试的时候,已经对一些子系统进行了功 能测试、性能测试等等,那么在系统测试时能否能测试、性能测试等等,那么在系统测试时能否 跳过相同内容的测试跳过相同内容的测试? ? 回答:不能,集成测试是在仿真环境展开并不是真正系统回答:不能,集成测试是在仿真环境展开并不是真正系统隙吾僻鞠纪裤睫

196、酚厘取仗兴酒晶陡羡利早陡争袄藐全彪该皆桅目谰及探姬第二测试技术第二测试技术http:/108108v问题:既然系统测试与验收测试的内容几乎是相同的,为问题:既然系统测试与验收测试的内容几乎是相同的,为什么还要验收测试?什么还要验收测试?回答:首先是信任问题,客户进行验收是应该的。其次是回答:首先是信任问题,客户进行验收是应该的。其次是软件的最终用户各色各样软件的最终用户各色各样v问题:能否将系统测试和验收测试问题:能否将系统测试和验收测试“合二为一合二为一”?回答:系统测试时间长,用户测试难以组织。用户测试消回答:系统测试时间长,用户测试难以组织。用户测试消耗的时间、花费的金钱高得多耗的时间、

197、花费的金钱高得多 竿躺叶虾嘿名葫惯矽轻寞吞级请择唇昌涌赐针锤钥腊妈商译炭昆头递伞救第二测试技术第二测试技术http:/109109v测试可以将测试描述为一个运行程序以发现错误的过程测试可以将测试描述为一个运行程序以发现错误的过程v软件测试的准则软件测试的准则: :不完全测试、风险测试、无法显示潜伏不完全测试、风险测试、无法显示潜伏错误、发现错误成线性增长、缺陷不能完全修复、测试错误、发现错误成线性增长、缺陷不能完全修复、测试有条理规程有条理规程v测试的方法测试的方法: :黑盒黑盒/ /白盒、静态白盒、静态/ /动态动态v软件测试的各个阶段:单元测试、集成测试、系统测试、软件测试的各个阶段:单元测试、集成测试、系统测试、验收测试验收测试v测试的内容包括:接口测试的内容包括:接口/ /路径测试、功能测试、性能测试、路径测试、功能测试、性能测试、压力测试、可靠性测试、安全性测试、用户界面测试、压力测试、可靠性测试、安全性测试、用户界面测试、安装安装/ /反安装测试反安装测试总结总结总结总结瑞辛闪了缎久焕送惫熏姿辽激跋队车渺链尝蹦菇蒙哄攘熬悄对怒僚辟进悔第二测试技术第二测试技术

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号