版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Version 3.0测试技术测试技术 软件质量的衡量标准是可以准时地交付给用户,软件质量的衡量标准是可以准时地交付给用户,所耗费的成本不超出预算,并且最重要的是,能所耗费的成本不超出预算,并且最重要的是,能够正常地运行。够正常地运行。 SQA 的目标是通过在开发周期的早期阶段发现错的目标是通过在开发周期的早期阶段发现错误来降低解决问题的成本。误来降低解决问题的成本。 SQA 应用于软件开发的每个阶段,每个阶段都有应用于软件开发的每个阶段,每个阶段都有其自己的质量标准。其自己的质量标准。 实施质量管理中,要注意构建自己的管理体系,实施质量管理中,要注意构建自己的管理体系,包括:构建质量计划、建
2、立质量保证、建立质量包括:构建质量计划、建立质量保证、建立质量控制等控制等 定义软件测试定义软件测试 明确软件测试的准则明确软件测试的准则 明确测试的方法明确测试的方法 描述软件测试的各个阶段描述软件测试的各个阶段 描述各种测试阶段的测试内容描述各种测试阶段的测试内容 软件测试是软件工程过程中的关键组件。软件测试是软件工程过程中的关键组件。 软件测试是软件质量保证的要素,可以将其软件测试是软件质量保证的要素,可以将其描述为一个运行程序以检测错误(如果有)描述为一个运行程序以检测错误(如果有)的过程。的过程。 编程大师说:没有错误的程序世间难求。编程大师说:没有错误的程序世间难求。 (编程之道)
3、(编程之道) 你在学校里学过测试吗?(读到博士可能你在学校里学过测试吗?(读到博士可能也不懂测试)也不懂测试) 你所在的企业重视测试吗?你所在的企业重视测试吗? (小公司程序(小公司程序员的技能更加全面)员的技能更加全面) 临时抱佛脚行吗?临时抱佛脚行吗?你以为有文档模板就会你以为有文档模板就会测试了吗测试了吗? 如果不懂得有效地进行测试,你不仅得不如果不懂得有效地进行测试,你不仅得不到功劳,也没人欣赏你的苦劳,你拥有最到功劳,也没人欣赏你的苦劳,你拥有最多的将只是疲劳。多的将只是疲劳。 职业软件工程师应当掌握需求开发、系统职业软件工程师应当掌握需求开发、系统设计、编程、测试、维护设计、编程、
4、测试、维护 所有技能。所有技能。 测试的目的是为了发现尽可能多的缺陷测试的目的是为了发现尽可能多的缺陷,不是不是为了说明软件中没有缺陷。为了说明软件中没有缺陷。 推论:成功的测试在于发现了迄今尚未发推论:成功的测试在于发现了迄今尚未发现的缺陷。所以测试人员的职责是设计这现的缺陷。所以测试人员的职责是设计这样的测试用例,它能有效地揭示潜伏在软样的测试用例,它能有效地揭示潜伏在软件里的缺陷件里的缺陷。 千万不要将千万不要将“测试测试”与与“演示演示”混为一谈。混为一谈。例如科研鉴定会。例如科研鉴定会。如果产品通过了严格的测试,大家不要不吭如果产品通过了严格的测试,大家不要不吭气,应当好好地宣传一把
5、气,应当好好地宣传一把 。 完全测试程序是不可能的完全测试程序是不可能的 输入量太大输入量太大 输出结果太多输出结果太多 软件实现途径太多软件实现途径太多 软件说明书没有客观标准。从不同角度看,软软件说明书没有客观标准。从不同角度看,软件缺陷的标准不同。件缺陷的标准不同。 软件测试是有风险的行为软件测试是有风险的行为 测试无法显示潜伏的软件缺陷测试无法显示潜伏的软件缺陷 找到的软件缺陷越多,就说明软件缺陷越找到的软件缺陷越多,就说明软件缺陷越多多 并非所有软件缺陷都能修复并非所有软件缺陷都能修复 软件测试一项讲究条理的技术专业软件测试一项讲究条理的技术专业 白盒测试中(有时候称为开盒测试),软
6、白盒测试中(有时候称为开盒测试),软件测试员可以访问程序员的代码,并通过件测试员可以访问程序员的代码,并通过检查代码来协助测试可以看到盒子里面。检查代码来协助测试可以看到盒子里面。一般在单元测试中采用白盒测试,用于测一般在单元测试中采用白盒测试,用于测试模块中所有可能的路径、执行所有循环试模块中所有可能的路径、执行所有循环并测试所有逻辑表达式。并测试所有逻辑表达式。 黑盒测试则侧重于软件的整体功能。黑盒测试则侧重于软件的整体功能。 它不它不基于程序的内部结构而基于系统功能。犹基于程序的内部结构而基于系统功能。犹如一个人站在黑盒子外面,只知道系统输如一个人站在黑盒子外面,只知道系统输入一定数据,
7、得到一定的输出,而不必清入一定数据,得到一定的输出,而不必清楚这个黑盒子中进行了哪些操作和运算。楚这个黑盒子中进行了哪些操作和运算。 静态检查静态检查 确保系统按照组织的标准和过程运行,主要依确保系统按照组织的标准和过程运行,主要依赖于评审和非运行的手段来检查。通常包括需赖于评审和非运行的手段来检查。通常包括需求评审、设计评审、代码走查和代码检查。求评审、设计评审、代码走查和代码检查。 动态检查动态检查 在生命周期中进行测试(运行)。通常包括单在生命周期中进行测试(运行)。通常包括单元测试、集成测试、系统测试、用户的验收测元测试、集成测试、系统测试、用户的验收测试。试。 审查审查 (Inspe
8、ction) 软件的一种基本测试方法,它以一系列典型问软件的一种基本测试方法,它以一系列典型问题为依据进行检测。题为依据进行检测。 走查走查 (Walkthrough) 一对一的审查,比审查更加仔细。一对一的审查,比审查更加仔细。 回顾回顾(Review) 以发现软件中存在的错误和缺陷为目的的一以发现软件中存在的错误和缺陷为目的的一种软件测试方法,它是在软件证实执行之前完成。种软件测试方法,它是在软件证实执行之前完成。测试阶段执行人静态校验动态校验可行性评审可行性评审开发人员,用户开发人员,用户需求评审需求评审开发人员,用户开发人员,用户设计评审设计评审开发人员开发人员单元测试单元测试开发人员
9、开发人员集成测试集成测试开发人员,用户开发人员,用户系统测试系统测试开发人员在用户开发人员在用户的协助下完成的协助下完成验收测试验收测试用户用户 对于产品说明书的制定是个很重要的设计对于产品说明书的制定是个很重要的设计阶段,产品说明书的质量会直接影响到整阶段,产品说明书的质量会直接影响到整个产品开发。个产品开发。 测试产品说明书属于静态黑盒子测试。测试产品说明书属于静态黑盒子测试。 测试用例:测试用例:编写用于输入输入的实际数制和编写用于输入输入的实际数制和预期结果。测试用例还明确指出使用具体测预期结果。测试用例还明确指出使用具体测试用例产生的测试程序的任何限制试用例产生的测试程序的任何限制
10、。 使用目的:使用目的: 测试用例应该设计为能够快速容易地发现尽测试用例应该设计为能够快速容易地发现尽可能多的错误。可能多的错误。 应该通过使用和产生正确和错误的输入和输应该通过使用和产生正确和错误的输入和输出来出来“检验检验”程序。程序。 其目标是要使用合理范围内的条件,尽可能其目标是要使用合理范围内的条件,尽可能全面地测试所有模块乃至整个系统。全面地测试所有模块乃至整个系统。 缺陷:最终产品同用户的期望不一致缺陷:最终产品同用户的期望不一致 缺陷的分类缺陷的分类 错误错误 遗漏遗漏 超出需求的部分超出需求的部分 缺陷(未触发)缺陷(未触发)VS.错误(应首先解决)错误(应首先解决) 调试的
11、方法:归纳法、演绎法和回溯法。调试的方法:归纳法、演绎法和回溯法。 常用调试技术使用诊断输出语句常用调试技术使用诊断输出语句 (diagnostic output statement)、快照转储、快照转储 (snapshot dump) 以及跟踪指令的断点以及跟踪指令的断点 (instruction-dependent breakpoint)。 开发与测试的开发与测试的 V V 型关系型关系如果软件开发过程采用严格的瀑布模型,那么开如果软件开发过程采用严格的瀑布模型,那么开发与测试有发与测试有“V V”型的对应关系型的对应关系 。需求需求开发开发 高层高层设计设计详细详细设计设计编程编程单元单
12、元测试测试集成集成测试测试系统系统测试测试验收验收测试测试 单元测试、集成测试、单元测试、集成测试、系统测试、系统测试、验收测验收测试。是试。是“从小到大从小到大”、“由内至外由内至外”、“循序渐进循序渐进”的测试过程,体现了的测试过程,体现了“分而分而治之治之”的思想。的思想。 单元测试的粒度最小,一般由开发小组采单元测试的粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符用白盒方式来测试,主要测试单元是否符合合“设计设计”。 集成测试界于单元测试和系统测试之间,集成测试界于单元测试和系统测试之间,起到起到“桥梁作用桥梁作用”,一般由开发小组采用,一般由开发小组采用白盒加黑盒的方
13、式来测试,既要验证白盒加黑盒的方式来测试,既要验证“设设计计”又要验证又要验证“需求需求”。 系统测试的粒度最大,一般由独立测试小系统测试的粒度最大,一般由独立测试小组采用黑盒方式来测试,主要测试系统是组采用黑盒方式来测试,主要测试系统是否符合否符合“需求规格说明书需求规格说明书”。 验收测试与系统测试非常相似,主要区别验收测试与系统测试非常相似,主要区别是测试人员不同,验收测试由用户执行。是测试人员不同,验收测试由用户执行。 测试内容一般包含测试内容一般包含接口与路径测试。接口与路径测试。 功能测试、健壮性测试、性能测试、用户界面测功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、压
14、力测试、可靠性测试、安装试、安全性测试、压力测试、可靠性测试、安装/ /反安装测试反安装测试 测试阶段测试阶段 主要依据主要依据 测试人员、测试方式测试人员、测试方式 主要测试内容主要测试内容 单元测试单元测试系统设计系统设计文档文档由开发小组执行白盒由开发小组执行白盒测试测试 接口测试、路径测试接口测试、路径测试 集成测试集成测试系统设计系统设计文档文档需求文档需求文档由开发小组执行白盒由开发小组执行白盒测试和黑盒测试测试和黑盒测试 接口测试、路径测试接口测试、路径测试功能测试、性能测试功能测试、性能测试 系统测试系统测试需求文档需求文档由独立测试小组执行由独立测试小组执行黑盒测试黑盒测试
15、功能测试、健壮性测试、功能测试、健壮性测试、性能测试、用户界面测性能测试、用户界面测试、安全性测试、压力试、安全性测试、压力测试、可靠性测试、安测试、可靠性测试、安装装/反安装测试反安装测试 验收测试验收测试需求文档需求文档由用户执行黑盒测试由用户执行黑盒测试 接口测试:数据一般通过接口输入和输出,接口测试:数据一般通过接口输入和输出,接口测试一般是白盒测试的第一步。接口测试一般是白盒测试的第一步。 输入参数有输入参数有“典型值典型值”、“边界值边界值”、“异常异常值值” 输出包括函数的返回值和输出参数。输出包括函数的返回值和输出参数。 实际输出与期望的输出不一致,那么说明程序实际输出与期望的
16、输出不一致,那么说明程序有错误。有错误。 一个函数体内的语句可能只有十几条,但一个函数体内的语句可能只有十几条,但逻辑路径可能有成千上万条。所以应该根逻辑路径可能有成千上万条。所以应该根据经验选择关键的路径测试。据经验选择关键的路径测试。 路径测试的检查表路径测试的检查表数据类型、变量值、逻辑判断、循环、内存管数据类型、变量值、逻辑判断、循环、内存管理、文件理、文件I/OI/O、错误处理错误处理 预防一些重要的路径没有被测试的措施有:预防一些重要的路径没有被测试的措施有:观察是否有程序语句从来没有被执行过。观察是否有程序语句从来没有被执行过。要特别留意函数体内的错误处理程序块。要特别留意函数体
17、内的错误处理程序块。 接口与路径测试用例的参考模板接口与路径测试用例的参考模板 功能测试的基本方法是构造一些合理输入功能测试的基本方法是构造一些合理输入(在需求范围之内),检查输出是否与期(在需求范围之内),检查输出是否与期望的相同。如果两者不一致,即表明功能望的相同。如果两者不一致,即表明功能有误。有误。 难点在于如何构造有效的输入。难点在于如何构造有效的输入。 功能测试的测试方法:等价划分法和边界功能测试的测试方法:等价划分法和边界值分析法。值分析法。 等价划分是指把输入空间划分为几个等价划分是指把输入空间划分为几个“等价区等价区间间”,在每个,在每个“等价区间等价区间”中只需要测试一中只
18、需要测试一个典型值就可以了。等价划分法来源于人们个典型值就可以了。等价划分法来源于人们的直觉与经验,可令测试事半功倍。的直觉与经验,可令测试事半功倍。 “缺陷遗漏在角落里,聚集在边界上缺陷遗漏在角落里,聚集在边界上”。边界。边界值测试法是对等价划分法的补充。如果值测试法是对等价划分法的补充。如果A A和和B B是输入空间的边界值,那么除了典型值外还是输入空间的边界值,那么除了典型值外还要用要用A A和和B B作为测试用例。作为测试用例。 功能测试功能测试用例的参考模板用例的参考模板 性能测试即测试软件处理事务的速度,一性能测试即测试软件处理事务的速度,一是为了检验性能是否符合需求,二是为了是为
19、了检验性能是否符合需求,二是为了得到某些性能数据供人们参考。得到某些性能数据供人们参考。 绝对值考虑:如数据送输速率是每秒多少绝对值考虑:如数据送输速率是每秒多少比特。比特。 “ “相对值相对值”考虑:如某个软件比另考虑:如某个软件比另一个软件快多少倍。一个软件快多少倍。 性能测试中考虑运行环境的影响:例如网性能测试中考虑运行环境的影响:例如网络环境、计算机主频,总线结构和外部设络环境、计算机主频,总线结构和外部设备都可能影响软件的运行速度。备都可能影响软件的运行速度。 性能测试的一些注意事项:性能测试的一些注意事项:应当编写一段程序用于计算时间以及相关数据。应当编写一段程序用于计算时间以及相
20、关数据。 应当测试软件在标准配置和最低配置下的性能。应当测试软件在标准配置和最低配置下的性能。 应当关闭那些消耗内存、占用应当关闭那些消耗内存、占用CPUCPU的其它应用的其它应用软件(如杀毒软件)。软件(如杀毒软件)。 应当分档记录。例如传输文件的容量从应当分档记录。例如传输文件的容量从100100K K到到1 1M M可以分成若干等级。可以分成若干等级。 同一种输入情况在不同的时间可能得到不同的同一种输入情况在不同的时间可能得到不同的性能数据,可以取其平均值。性能数据,可以取其平均值。 性能测试性能测试用例的参考模板用例的参考模板 压力测试也叫负荷测试,即获取系统能正压力测试也叫负荷测试,
21、即获取系统能正常运行的极限状态。常运行的极限状态。 压力测试的主要任务是:构造正确的输入,压力测试的主要任务是:构造正确的输入,使劲折腾系统却让它刚好不瘫痪。使劲折腾系统却让它刚好不瘫痪。 压力测试的一个变种是敏感测试。在某种压力测试的一个变种是敏感测试。在某种情况下,微小的输入变动会导致系统的表情况下,微小的输入变动会导致系统的表现(如性能)发生急剧的变化。现(如性能)发生急剧的变化。 压力测试用例的参考模板压力测试用例的参考模板 健壮性测试健壮性测试 用户界面测试用户界面测试 信息安全测试信息安全测试 可靠性测试可靠性测试 安装和反安装测试安装和反安装测试 问题问题1:有了:有了“黑盒黑盒”测试为什么还要测试为什么还要“白白盒盒”测试?测试? 问题问题2:由于单元测试要写测试驱动程序,:由于单元测试要写测试驱动程序,非常麻烦,能否等到整个系统全部开发完后,非常麻烦,能否等到整个系统全部开发完后,再集
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 冬防筑平安安全伴我行-冬季防火安全主题班会
- 焙烧压煮工岗前设备维护考核试卷含答案
- 火工品管理工班组建设模拟考核试卷含答案
- 香料制造工常识强化考核试卷含答案
- 煤制气工技术实务水平考核试卷含答案
- 听觉口语师岗中技术应用考核试卷含答案
- 水产蛋白提炼工技术实务竞赛考核试卷含答案
- 包装设计师安全管理测试考核试卷含答案
- 变压变温吸附装置操作工班组协作水平考核试卷含答案
- 玉石检验员创新思维能力考核试卷含答案
- 2026年校招:中国银行试题及答案
- 四川省泸州市泸县第五中学2026-2027学年高一上学期9月考试英语试卷
- 海南省海口市2027届高三年级摸底考试生物试题(含解析)
- 2026年物业管理条例考核试题及答案
- 公共娱乐场所电气消防安全培训
- 2026秋新版道德与法治五年级上册教学课件:第七课第1课时 社会主义好-自力更生结硕果 有多个微课视频
- 2026岳阳观盛投资发展有限公司及下属管理企业秋季联合招聘25人笔试备考题库及答案详解
- 第5课 中国人民站起来了 第1课时 课件(内嵌视频)2026-2027学年道德与法治五年级上册统编版
- 制造业公司绩效考核含全套KPI指标库
- 2026年《资料员》考试题库带答案(考试直接用)
- 办公楼物业服务标准(保洁服务类)
评论
0/150
提交评论