《黑盒测试培训》PPT课件.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《《黑盒测试培训》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《黑盒测试培训》PPT课件.ppt(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件测试培训内容l l什么是软件测试什么是软件测试l l软件测试对象软件测试对象l l测试的目的测试的目的l l测试的分类测试的分类l l功能测试方法与内容功能测试方法与内容l l测试策略测试策略l l测试流程及相关文档测试流程及相关文档l l测试人员的基本素质测试人员的基本素质l l测试驱动开发介绍测试驱动开发介绍什么是软件测试l l软件测试是一种有效的提高软件质量的手段软件测试是一种有效的提高软件质量的手段,但即使在投入但即使在投入上有所保证上有所保证,测试也不能百分为百发现所有质量隐患测试也不能百分为百发现所有质量隐患.况且况且软件质量并不仅仅是测试出来的软件质量并不仅仅是测试出来的.l
2、 l很多人认为软件测试就是运行一下软件很多人认为软件测试就是运行一下软件,看看结果对不对看看结果对不对.但实际上但实际上,如何在有限的投入下如何在有限的投入下,提高软件测试的效率和产提高软件测试的效率和产出是一件很见功底的事出是一件很见功底的事.好的测试人员不仅要掌握各种测试好的测试人员不仅要掌握各种测试技术技术,还要具备丰富的编程经验和对还要具备丰富的编程经验和对BUGBUG的敏感的敏感.测试的复测试的复杂之处杂之处,除了测试技术问题之外除了测试技术问题之外,还有测试管理问题还有测试管理问题.l l测试不是可有可无测试不是可有可无,随心所欲的随心所欲的.规范化的软件开发需要对规范化的软件开发
3、需要对软件测试早做计划软件测试早做计划,分配必要的时间分配必要的时间,人力和财力等资源人力和财力等资源,并并将其作为项目管理的一个部分加以控制和协调将其作为项目管理的一个部分加以控制和协调.l l开发和测试是软件项目相辅相成的两个过程开发和测试是软件项目相辅相成的两个过程,人员间的交流人员间的交流,协作和配合是提高整体效率的重要因素协作和配合是提高整体效率的重要因素.l l开发与测试的 V 型关系l l如果软件开发过程采用严格的瀑布模型,那么如果软件开发过程采用严格的瀑布模型,那么开发与测试有开发与测试有“V”V”型的对应关系型的对应关系 。需求开发高层设计详细设计编程单元测试集成测试系统测试
4、验收测试l l软件产品开发完毕,再进行测试的观念是有悖于生命周期理论的.软件产品质量问题越晚发现,修复的代价越大.需求设计编程内部测试外部测试发布修正BUG的代价l l一些常识和经验之谈一些常识和经验之谈l l测试能提高软件的质量,但是提高质量不能依赖测试。测试能提高软件的质量,但是提高质量不能依赖测试。l l测试只能证明缺陷存在,不能证明缺陷不存在。测试只能证明缺陷存在,不能证明缺陷不存在。“彻彻底地测试底地测试”难以成为现实,要考虑时间、费用等限制,难以成为现实,要考虑时间、费用等限制,不允许无休止地测试。我们应当祈祷:软件的缺陷在不允许无休止地测试。我们应当祈祷:软件的缺陷在产品被淘汰之
5、前一直没有机会发作。产品被淘汰之前一直没有机会发作。l l测试的主要困难是不知道如何进行有效地测试,也不测试的主要困难是不知道如何进行有效地测试,也不知道什么时候可以放心地结束测试。知道什么时候可以放心地结束测试。l l每个开发人员应当测试自己的程序(份内之事),但每个开发人员应当测试自己的程序(份内之事),但是不能作为该程序已经通过测试的依据(所以项目需是不能作为该程序已经通过测试的依据(所以项目需要独立测试人员)。要独立测试人员)。l l80-2080-20原则:原则:8080的缺陷聚集在的缺陷聚集在2020的模块中,经常出的模块中,经常出错的模块改错后还会经常出错错的模块改错后还会经常出
6、错l l测试应当循序渐进,不要企图一次性干完,注意测试应当循序渐进,不要企图一次性干完,注意“欲欲速则不达速则不达”。l l软件测试的定义 软件测试是为了发现错误而执行程序的过程 软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程.l l软件测试不等于程序测试.软件测试贯穿于软件定义和开发的整个期间.需求分析,概要设计,详细设计,以及程序编码等各个阶段所得到的文档,包括需求规格说明,概要设计规格说明,详细设计规格说明以及源程序,都是软件测试的对象.软件测试的对象 l l软件生存各个阶段
7、间的确认和验证软件生存各个阶段间的确认和验证测试的目的l l测试的目的是寻找错误,并且是尽最大可能找出最多的错误.在选取用例时,考虑那些易于发现程序错误的数据;l l一个好的测试用例在于发现至今未发现的错误;l l一个成功的测试是发现了至今未发现的错误的测试.l l正确理解测试的目的十分重要。如果认为测试的目的是为了说明程序中正确理解测试的目的十分重要。如果认为测试的目的是为了说明程序中没有缺陷,那么测试人员就会向这个目标靠拢,因而下意识地选用一些没有缺陷,那么测试人员就会向这个目标靠拢,因而下意识地选用一些不易暴露错误的测试示例。这样的测试是不真实的。不易暴露错误的测试示例。这样的测试是不真
8、实的。l l为什么需要测试?因为软件中有为什么需要测试?因为软件中有BugBug。l l为什么软件中有为什么软件中有BugBug?以下是一些原因:?以下是一些原因:(1 1)开发人员不太了解需求,不清楚应该)开发人员不太了解需求,不清楚应该“做什么做什么”和和“不做什么不做什么”,常常做不合需求的事情,因此产生了,常常做不合需求的事情,因此产生了BugBug。(2 2)软件系统越来越复杂,开发人员不太可能精通所有的技术,如果)软件系统越来越复杂,开发人员不太可能精通所有的技术,如果不能正确地使用技术,将产生不能正确地使用技术,将产生BugBug。(3 3)技术文档普遍比较糟糕,文档本身就有)技
9、术文档普遍比较糟糕,文档本身就有BugBug,导致使用者产生更多,导致使用者产生更多的的BugBug。(4 4)软件需求、设计报告、程序经常发生变更,每次变更都可能产生)软件需求、设计报告、程序经常发生变更,每次变更都可能产生新的新的BugBug。(5 5)任何人在编程时都可能犯错误,导致程序中有)任何人在编程时都可能犯错误,导致程序中有BugBug。(6 6)人们常处于进度的压力之下,急忙之下容易产生)人们常处于进度的压力之下,急忙之下容易产生BugBug,尤其是在期,尤其是在期限临近之际。限临近之际。(7 7)人们过于自信,喜欢说)人们过于自信,喜欢说“没问题没问题”,不真实的,不真实的“
10、没问题没问题”将产生将产生真正的问题。真正的问题。测试的分类l l从测试方法的角度可以分为手工测试和自动化测试。l l手工测试:不使用任何测试工具,根据事先设计好的测试用例来运行系统,测试各功能模块l l自动化测试:利用测试工具,通过编写测试脚本和输入测试数据,自动运行测试程序。目前最常用的自动化测试工具是基于GUI的自动化测试工具,基本原理都是录制、回放技术。l l从整体的角度可以分为单元测试、集成测试、系统测试、从整体的角度可以分为单元测试、集成测试、系统测试、确认测试。确认测试。l l单元测试:是针对软件设计的最小单位单元测试:是针对软件设计的最小单位程序模块,进行程序模块,进行正确性检
11、验的测试工作。一般包括逻辑检查、结构检查、正确性检验的测试工作。一般包括逻辑检查、结构检查、接口检查、出错处理、代码注释、输入校验、边界值检查。接口检查、出错处理、代码注释、输入校验、边界值检查。单元测试的依据是系统的详细设计;一般由项目组开发人单元测试的依据是系统的详细设计;一般由项目组开发人员自己完成。员自己完成。l l集成测试:在单元测试的基础上,将所有模块按照设计要集成测试:在单元测试的基础上,将所有模块按照设计要求组装进行测试。一般包括逻辑关系检查、数据关系检查、求组装进行测试。一般包括逻辑关系检查、数据关系检查、业务关系检查、模块间接口检查、外部接口检查。业务关系检查、模块间接口检
12、查、外部接口检查。l l系统测试:系统测试是在所有单元、集成测试后,对系统系统测试:系统测试是在所有单元、集成测试后,对系统的功能及性能的总体测试。的功能及性能的总体测试。l l确认测试:模拟用户运行的业务环境,运用黑盒测试方法,确认测试:模拟用户运行的业务环境,运用黑盒测试方法,验证软件系统是否满足用户需求或软件需求说明书中指明验证软件系统是否满足用户需求或软件需求说明书中指明的软件特性(功能、非功能)上的。的软件特性(功能、非功能)上的。l l从测试原理上分为:白盒测试、黑盒测试。从测试原理上分为:白盒测试、黑盒测试。l l白盒测试:是通过程序的源代码进行测试而不使用用白盒测试:是通过程序
13、的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。进而加以修正。l l黑盒测试:是通过使用整个软件或某种软件功能来严黑盒测试:是通过使用整个软件或某种软件功能来严格地测试格地测试,而并没有通过检查程序的源代码或者很清而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。测楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据然后看输出的结果从而了试人员通过输入他们的数据然后看输
14、出的结果从而了解软件怎样工作。在测试时,把程序看作一个不能打解软件怎样工作。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收和正确的输出序是否能适当地接收和正确的输出l l黑盒测试方法主要有等价类划分、边界值分析、错误推测法等。黑盒测试方法主要有等价类划分、边界值分析、错误推测法等。l l等价类划分:等价类划分:是把所有可
15、能的输入数据是把所有可能的输入数据,即程序的输入域划分成若干部分(子集)即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法该方法是一种重要的是一种重要的,常用的黑盒测试用例设计方法常用的黑盒测试用例设计方法.设计测试用例时设计测试用例时,要同时考虑这两种等价类要同时考虑这两种等价类.因为因为,软件不仅要能接收合软件不仅要能接收合理的数据理的数据,也要能经受意外的考验也要能经受意外的考验.这样的测试才能确保软件具有更高这样的测试才能确保软件具有更高的可靠性的可靠性.l l边界值分析:边界值分析
16、:长期的测试工作经验告诉我们长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的大量的错误是发生在输入或输出范围的边界上边界上,而不是发生在输入输出范围的内部而不是发生在输入输出范围的内部.因此针对各种边界情况设因此针对各种边界情况设计测试用例计测试用例,可以查出更多的错误。可以查出更多的错误。l l错误推测法:错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性从而有针对性的设计测试用例的方法的设计测试用例的方法.错误推测方法的基本思想错误推测方法的基本思想:列举出程序中所有列举出程序中所有可能有的错误和容易发生错误
17、的特殊情况可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例根据他们选择测试用例.例例如如,在单元测试时曾列出的许多在模块中常见的错误在单元测试时曾列出的许多在模块中常见的错误.以前产品测试中以前产品测试中曾经发现的错误等曾经发现的错误等,这些就是经验的总结这些就是经验的总结.还有还有,输入数据和输出数据输入数据和输出数据为为0 0的情况的情况.输入表格为空格或输入表格只有一行输入表格为空格或输入表格只有一行.这些都是容易发生这些都是容易发生错误的情况错误的情况.可选择这些情况下的例子作为测试用例。可选择这些情况下的例子作为测试用例。l l从软件特性上分为功能测试和性能测试。从软件特性
18、上分为功能测试和性能测试。l l功能测试:是指为了确保软件系统功能实现的正功能测试:是指为了确保软件系统功能实现的正确性,完整性和其他特性而进行的测试。确性,完整性和其他特性而进行的测试。l l性能测试:是指为了评估软件系统的性能状况,性能测试:是指为了评估软件系统的性能状况,和预测软件系统性能趋势而进行的测试和分析。和预测软件系统性能趋势而进行的测试和分析。l l1 1、数据输入测试:向系统输入数据或输入数据库操作命令时,一般、数据输入测试:向系统输入数据或输入数据库操作命令时,一般是测试系统对数据库中数据操作的过程。是测试系统对数据库中数据操作的过程。l l数据类型测试:由于不同的数据库系
19、统对数据类型要求的不同,在定数据类型测试:由于不同的数据库系统对数据类型要求的不同,在定义数据库表时,也规定了数据字段的数据类型。测试步骤和方法:在义数据库表时,也规定了数据字段的数据类型。测试步骤和方法:在系统的数据维护功能界面上,录入或修改数据时,特意输入非系统设系统的数据维护功能界面上,录入或修改数据时,特意输入非系统设计的数据类型,检查系统是否可以接受,若不能接受则检查是否满足计的数据类型,检查系统是否可以接受,若不能接受则检查是否满足了系统在这方面的设计要求,如即刻清除非法内容、输入焦点不能到了系统在这方面的设计要求,如即刻清除非法内容、输入焦点不能到下一输入位置、出现系统自定义的提
20、示信息、不允许出现开发工具的下一输入位置、出现系统自定义的提示信息、不允许出现开发工具的报错信息等。若系统可以接受并保存,则要看数据库表的字段类型设报错信息等。若系统可以接受并保存,则要看数据库表的字段类型设计是否与用户或习惯上不一致,并且要注意其他模块在调取该数据时,计是否与用户或习惯上不一致,并且要注意其他模块在调取该数据时,是否有特定要求。是否有特定要求。l l边界值测试:根据数据取值范围的要求,输入符合取值范围的数据、边界值测试:根据数据取值范围的要求,输入符合取值范围的数据、取值范围的上、下限和超过取值范围的数据。注意,除要测试数据库取值范围的上、下限和超过取值范围的数据。注意,除要
21、测试数据库系统本身数据类型取值范围外,还要根据软件系统设计中的一些特定系统本身数据类型取值范围外,还要根据软件系统设计中的一些特定要求,设计测试用例来测试。要求,设计测试用例来测试。功能测试方法与内容l l数据合法性测试:测试人员除了要测试输入数据是否满足所使用数据数据合法性测试:测试人员除了要测试输入数据是否满足所使用数据库系统本身的数据类型和取值范围的要求外,还应该根据经验和软件库系统本身的数据类型和取值范围的要求外,还应该根据经验和软件系统和需求的特定要求检查输入数据的合法性。比如:日期合法性系统和需求的特定要求检查输入数据的合法性。比如:日期合法性(出生年月、参保日期、发生时间、根据习
22、惯和业务逻辑顺序对日期(出生年月、参保日期、发生时间、根据习惯和业务逻辑顺序对日期合理性的要求等)。工资、比例、率等,都要注意输入的合理、合法合理性的要求等)。工资、比例、率等,都要注意输入的合理、合法性。性。l l单引号和双引号:不要忽略输入单引号和双引号可能引起的错误和数单引号和双引号:不要忽略输入单引号和双引号可能引起的错误和数据问题。在功能录入界面上,在某字段的输入框输入了包括单引号和据问题。在功能录入界面上,在某字段的输入框输入了包括单引号和双引号的数据,以后在通过双引号的数据,以后在通过Select Select 语句查询时可能会出问题。特别在语句查询时可能会出问题。特别在基于基于
23、WEBWEB方式的系统,输入了单引号,在查询数据记录时,肯定会出方式的系统,输入了单引号,在查询数据记录时,肯定会出现页面链接错误(页面无法链接或找不到或链接对象错误)。现页面链接错误(页面无法链接或找不到或链接对象错误)。l l空值测试:在测试数据录入或修改的功能界面时,若不输入任何东西,空值测试:在测试数据录入或修改的功能界面时,若不输入任何东西,系统又没有设计成系统又没有设计成NOT NULLNOT NULL,则这时,要非常注意其影响。因为数,则这时,要非常注意其影响。因为数据可以正常保存,但数据表该字段是空值,那么所有与该字段有关的据可以正常保存,但数据表该字段是空值,那么所有与该字段
24、有关的操作,如:查询操作,如:查询(AND)(AND)、计算(累加、连乘)等,则可能出现数据问、计算(累加、连乘)等,则可能出现数据问题(计算结果为题(计算结果为0 0,无记录返回)。对于测试人员首先要检查系统到,无记录返回)。对于测试人员首先要检查系统到底是作为空值,还是作为空串或空字符处理。另外对于允许不输入任底是作为空值,还是作为空串或空字符处理。另外对于允许不输入任何值的字段,在测试过程中,要检查是否在界面显示或打印报表时,何值的字段,在测试过程中,要检查是否在界面显示或打印报表时,这些字段作为了关键要素或标题等情况。这些字段作为了关键要素或标题等情况。l l空格:在数据维护的功能界面
25、上,输入数据时,要注意是否在输入位空格:在数据维护的功能界面上,输入数据时,要注意是否在输入位置有空格,首先看系统设计时,是怎么考虑的,若系统允许输入空格,置有空格,首先看系统设计时,是怎么考虑的,若系统允许输入空格,则检查条件查询或作为调用参数时的数据返回情况;另外检查程序是则检查条件查询或作为调用参数时的数据返回情况;另外检查程序是否使用了去掉空格的函数。否使用了去掉空格的函数。l l数据校验的不一致:测试时,对于一些编号、编码、代码等主键或作数据校验的不一致:测试时,对于一些编号、编码、代码等主键或作为查询或调用条件的字段,要注意系统对他们的输入合法性检查与查为查询或调用条件的字段,要注
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 黑盒测试培训 黑盒 测试 培训 PPT 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内