软件测试 第1章软件测试基础知识.docx

上传人:太** 文档编号:35623857 上传时间:2022-08-22 格式:DOCX 页数:7 大小:114.88KB
返回 下载 相关 举报
软件测试 第1章软件测试基础知识.docx_第1页
第1页 / 共7页
软件测试 第1章软件测试基础知识.docx_第2页
第2页 / 共7页
点击查看更多>>
资源描述

《软件测试 第1章软件测试基础知识.docx》由会员分享,可在线阅读,更多相关《软件测试 第1章软件测试基础知识.docx(7页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、课程教学内容: 软件测试基本学问静态测试技术 动态测试技术:这一章我们将学习白盒测试和黑盒测试方法单元测试 集成测试系统测试 验收测试面对对象软件测试:这一章我们将学习到面对对象测试的基本方法和策略 专用应用系统测试:将主要学习GUI测试,WEB应用系统测试以及数据库测试;测试管理第一章软件测试基础学问教学内容: 软件测试的必要性 软件测试和软件质量的基本概念 软件测试现状与进展 软件测试的目的和原那么 软件测试分类 测试完成标准 软件测试过程课型:新授课教时:4课时教学重点:1 .软件测试的定义.软件测试的原那么2 .软件测试的分类.黑盒测试的定义3 .白盒测试的定义第一节软件测试的必要性1

2、 案例说明:1.1 迪斯尼的软件问题1.2 1994年Intel芯片的浮点除法问题1.3 1999年发生的火星探测飞船的坠毁1.4 Therac-25 (特瓦克-25)大事1.5 爱国者导弹防范系统软件故障导致软件缺陷的缘由1.6 有很多因素会导致软件缺陷,主观缘由是人类在从事软件开发过程中简单犯错误1.7 开发过程管理法律规范性、开发技术、软件的简单性、开发的周期长短及个人力量等因素也会导致软件缺陷的产生说明:软件测试是觉察并订正软件缺陷极其重要的活动,作为一名软件工程专业的同 学,特别有必要把握基本的测试理论和技术。2 软件测试在软件开发、维护和使用中的角色2.1 在软件开发过程中,软件测

3、试是质量保证的一个环节,有助于觉察各阶段的缺陷,避开缺陷进入下一阶段,对软件的质量起到关键作用2.2 在维护阶段,软件测试主要觉察由于修改或功能增加而导致的软件缺陷2.3 在使用过程中,可能由于硬件升级、运行环境变化及软件退役等缘由消失各种问题,软件测试主要用于找到这些问题所在,或者通过软件测试模拟或再现可能消 失的问题其次节 软件测试和软件质量的基本概念1 .软件测试的定义1.1 在规定条件下对软件进行操作,以觉察错误,对软件质量进行评估1.2 软件测试有两个基本职责,即验证和确认。2 软件质量的定义2.1 在规定条件下使用时,软件产品满意明确或隐含要求的力量,分为内部质量、外部质量和使用质

4、量2.2 内部质量指软件产品本身的质量2.3 外部质量指软件产品作为计算机系统的一个组成局部,使得系统的行为能满意明确和隐含需要的力量2.4 使用质量(quality in use)是基于用户观点的软件产品用于指定的环境和使用周境(context)时的质量3 错误 error,缺陷 defect,故障 fault,失效 failure , bug3.1 错误、缺陷、故障:计算机程序中不正确的步骤、过程或数据定义失效:产品执行所要求功能的力量的终止或它在从前规定的限度内无力执行所要 求的功能3.2 错误和缺陷是客观存在的东西,故障是执行错误和缺陷的结果,故障的消失将导致失效,Bug是错误的口语化

5、表示3.3 BUG:(小错误,缺陷,缺乏,过失)一个计算机bug指在计算机程序中存在 的一个错误(error)缺陷(flaw)、疏忽(mistake)或者故障(fault),这些bug 使程序无法正确的运行。Bug产生于程序的源代码或者程序设计阶段的疏忽或者 错误。4 确认与验证4.1 确认 validation:通过检查和供应客观证据来证明针对某一特定预期用途的需求已经得到满意在设计和开发中,确认涉及到检查某个产品以确定是否符合用户需要的过程 确认:我们在构造正确的产品吗?Validation: Are we building the right product?4.2 验证 verific

6、ation:通过检查和供应客观证据来证明规定需求已经得到满意在设计和开发中,验证是指对某项规定活动的结果进行检查的过程,以确定 该活动对规定需求的符合状况验证:我们在正确地构造产品吗?Verification: Are we building the product right?5 软件测试和软件质量保证的区分5.1 软件测试只是软件质量保证工作中的一个环节5.2 软件质量保证和软件测试是软件质量工程的两个不同层面的工作软件质量保证主要着眼于软件开发活动中的过程、步骤和产物(工作产品),而不 是对软件本身进行剖析、找出缺陷和评估例如:食品的质量保证是构建食品平安体系,从食品原料到企业内部生产、

7、产品 流通到最终消费者全部环节都要建立严格的质量掌握体系,严把质量关,才能确 保食品平安,关注的是食品从原材料生产到最终销售的一个过程。5.3 软件测试虽然也与开发过程紧密相关,但关怀的不是过程的活动,而是对过程的 产物或开发出的软件工作产品进行剖析例如:在食品的质量保证中,软件测试类似企业内部对每个生产批次的食品的抽 查检验,关注的是食品本身的质量问题。第三节软件测试现状与进展1 .现状:1.1 20世纪50年月,软件测试与调试加以区分,成为觉察软件缺陷的重要活动1.2 20世纪80年月初期,“软件质量”被广阔业者重视,软件测试不单纯是觉察错误的过程,而且包含对软件质量的评价1.3 20世纪

8、90年月,由于软件的简单性提高、对软件质量的要求越来越严格、软件测试技术的进展,消失各种测试工具1.4 近20年来,测试专家总结出了一些测试模型,例如,V模型、W模型等,在测 试过程改进方面提出了 TMM(Testing Maturity Model测试成熟度模型)的概念进展趋势1.5 软件测试不仅是软件开发的一个活动,而且应贯穿整个软件开发的全过程在软件开发过程中软件架构师、开发工程师、QA人员、测试工程师将进行更好 的融合,测试与软件的分析、设计、编码等工作的集成度越来越高1.6 软件测试工程师在软件开发过程中的地位越来越重要,测试职业得到了充分的敬 重软件测试工具在软件测试中起到重要的作

9、用,测试工具能与其他开发工具做到很 好的集成,到达不同工具间的信息数据共享1.7 软件测试外包服务将快速增长,将成为全球化的一种趋势第四节 软件测试的目的和原那么1 .目的软件测试的目的是通过软件测试而觉察软件缺陷,并通过软件测试来确保软件产 品的质量1.1 测试并不仅仅是为了要找出缺陷,还可用于对软件质量进行评估通过分析缺陷产生的缘由和缺陷的分布特征,可以关心工程管理者或测试人员改 进其工作1.2 服务于测试目标的规章软件测试是为了觉察错误而执行程序的过程1.2.1 测试是为了证明程序有错,而不是证明程序无错一个好的测试用例在于它能觉察至今未觉察的错误1.2.2 一个胜利的测试是觉察了至今未

10、觉察的错误的测试原那么1.3 全部的软件测试都应追溯到用户需求必需满意用户需求1.4 尽早地和不断地进行软件测试问题觉察越早,解决问题的代价就越小,这是软件开发过程中的黄金法那么1.5 不行能完全地测试主要缘由:测试全部可能输入是不行能的、系统或程序的全部路径不行能全部执 行、无法觉察需求规格说明书本身的错误、不行能穷尽全部输出1.6 增量测试,由小到大由小到大的测试策略指的是软件测试对象的粒度,先测试子程序、类、构件,再 逐步将其组合成较大的模块(或子系统)进行测试1.7 避开测试自己的程序主要缘由:由程序员成认自己写的程序有缺陷往往比拟困难等缘由1.8 设计完善的测试用例测试用例的设计是测

11、试工作的核心内容,应当尽可能地设计得周密细致。测试用例设计完成后需要进行评审1.9 留意测试中的群集现象测试中觉察的80%的错误可能来自20%的程序代码1.10 确认缺陷的有效性缺陷A可能导致缺陷B的产生,缺陷A修复后,缺陷B可能自然消逝1.11 合理支配测试方案测试方案给出什么时间地点由谁来怎样完成什么任务1.12 进行回归测试回归测试是对修正缺陷后的应用程序进行测试,以确保缺陷被修复,并且没有引 入新的软件缺陷1.13 测试结果的统计和分析只有对测试的输出信息进行深化的统计、分析和比拟,才能给出清楚的错误缘由 分析报告1.14 准时更新测试在测试过程中,消失需求变更、设计变更等状况时,都要

12、准时更新测试第五节软件测试分类可以从不同的角度进行分类.按测试阶段或层次1.1 单元测试1.2 集成测试1.3 系统测试1.4 验收测试按测试目标或特性1.5 功能性测试1.6 非功能性测试221性能测试1.6.2 压力测试223平安保密性测试2.2.4 牢靠性测试安装测试3 按测试方法3.2 静态测试人工测试3.1.1 自动测试3.2 动态测试白盒测试3.2.1 黑盒测试灰盒测试4 单元测试4.1 单元测试的对象是程序系统中的最小单元模块或组件4.2 通常在编码阶段进行单元测试,主要采纳白盒测试方法,依据程序的内部结构设计测试用例,检查程序模块或组件的已实现的功能与定义的功能是否全都、以及

13、编码中是否存在错误4.3 多个模块可以平行地、独立地测试4.4 单元测试一般由编程人员和测试人员共同完成,而以开发人员为主4.5 单元测试包括代码审查,代码审查可以觉察程序50%70%的代码缺陷集成测试4.6 集成测试,也称组装测试、联合测试、子系统测试,在单元测试的基础上,将模 块依据设计要求组装在一起进行测试,主要目标是觉察与接口有关的模块之间的 问题4.7 两种集成方式一次性(非增量)集成方式522增殖(增量)式集成方式系统测试4.8 系统测试是将软件放在整个计算机环境下,包括软硬件平台、某些支持软件、数据和人员等,在实际运行环境下进行一系列的测试4.9 主要针对系统的非功能性特征,如性

14、能测试、压力测试、容量测试、平安保密性测试、恢复测试、健壮性测试、牢靠性测试、可安装性测试等5 验收测试目的是向将来的用户说明系统能够像预定要求那样工作,验证软件的功能和性能 犹如用户所合理期盼的那样6 功能性测试6.1 功能性测试一般须在完成集成测试后进行,而且是针对应用系统进行测试6.2 功能测试是基于产品功能说明书,产品应具有的功能,从用户角度来进行功能验证,以确认每个功能是否都能正常使用7 静态测试和动态测试7.1 静态测试是指不通过执行实际代码(被测程序)而对软件开发的产品进行分析的测试活动7.1.1 人工方法:由测试人员手工逐步执行全部的活动,并观看每一步是否胜利完 成(测试对象:

15、开发过程中的中间产品,程序)自动方法:使用一组测试工具对被测软件进行分析和验证(测试对象:程序)7.2 动态测试是指运行被测程序,通过输入测试用例,分析运行结果,从而觉察软件的错误和缺陷的测试活动10白盒测试与黑盒测试10.1 白盒测试(又称为结构测试)把测试对象看作一个透亮的盒子,测试人员依据程序内部的规律结构及有关信息设计测试用例,检查程序中全部规律路 径是否都按预定的要求正确地工作10.2 黑盒测试(又称功能测试)把测试对象看做一个黑盒子,测试人员完全不考虑程 序内部的规律结构和内部特性,只依据程序的需求规格说明书,检查程序的功能 是否符合它的功能需求11灰盒测试11.1 灰盒测试介于白

16、盒测试与黑盒测试之间,关注的是输出对于输入的正确性,同时 也关注内部表现,但这种关注不像白盒那样具体、完整,只是通过一些表征性的 现象、大事、标志来推断内部的运行状态灰盒是一种程序或系统的工作过程被局部认知的装置,是基于对程序内部细节有 限认知的方法11.2 测试者可能知道系统组件之间是如何相互作用的,但缺乏对内部程序功能和运作 的具体了解11.3 对于内部过程,灰盒测试把程序看作一个必需从外面进行分析的黑盒第六节测试完成标准1 .可以从以下几个方面考虑:1.1 测试的时间用完时1.2 连续测试没有产生新失效时1.3 连续测试没有觉察新的缺陷时1.4 无法设计出新的测试用例时1.5 连续测试回

17、报很小时1.6 到达所要求的测试掩盖时1.7 全部已觉察的错误或缺陷都已经被清除时观看测试阶段中单位时间内觉察错误数目的曲线单位时间内可以停止发现的错误数 单位时间内周(或天)周(或天)第七节软件测试过程1 . GB/T 15532软件测试法律规范中的测试过程a)测试筹划:确定需要测试的内容或质量特性,确定测试的充分性要求,提出测试的 基本方法,确定测试资源和技术需求,进行风险分析与评估,制定测试方案b)测试设计:依据测试需求,分析并选用已有的测试用例或设计新的测试用例,猎取 并验证测试数据,确定测试用例执行挨次,猎取测试资源,开发测试软件,建立并 校准测试环境,进行测试就绪评审c)测试执行:执行测试用例,猎取测试结果,分析并判定测试结果,并依据不同的判定结果实行相应的措施d)测试总结:整理和分析测试数据,评价测试效果和被测软件项,描述测试状态,完 成软件测试报告,通过测试评审.测试驱动开发的基本思想a)在开发功能代码之前,先编写测试代码,然后只编写使测试通过的功能代码,从而 以测试来驱动整个开发过程的进行b)测试驱动开发有助于编写简洁、可用和高质量的代码,有很高的敏捷性和健壮性, 能快速响应变化,并加速开发过程c)比方:拉线砌墙d)灵敏方法(如XP方法)采纳测试驱动开发

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com