- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件测试与质量知识点整理软件测试概述软件测试基本思想软件生存周期:软件生命周期一般包括以下阶段:软件计划与可行性研究(问题定义、可行性研究)、需求分析、软件设计(概要设计与详细设计)、编码、软件测试、运行与维护软件测试的技术与过程软件测试的过程包括以下阶段:测试设计、测试自动化、测试执行、测试评估测试设计:Criterial Based:设计测试数值去满足覆盖规则或者其他工程性目标软件测试中最具技巧性的工作需要的知识:离散数学、编程、测试往往需要软件工程知识背景Human Bases:基于程序的领域知识和测试的人工知识设计测试数据基于规则的(Criteria-based)方法会忽略特殊情况,需要的知识:域知识、测试技能和用户接口几乎不需要传统的软件工程知识背景测试自动化:将测试数据写入可运行脚本需要很少的理论知识基础,对技术的要求不高,需要较低层次的编程技术即可测试执行:在软件上运行测试并且记录结果如果测试自动化程度比较高,这将是一个简单而又繁琐的工作。需要基本的计算机技能:实习生、没有软件工程知识背景的人员图形用户界面并不是很容易实现自动化,这需要许多人工劳作测试执行者必须非常谨慎小心地对运行结果进行记录测试评估:评估测试的结果,这比它看上去要难得多需要的知识:领域知识、测试知识、用户接口和心理学通常情况下几乎不需要软件工程(SE)学历:软件的领域( domain )背景很重要;有相关的经验背景是很有用的(生理学、心理学…);具有逻辑很好的逻辑思维对胜任这项工作很有帮助(法律、哲学、数学)其他活动:测试管理:制定策略,组织团队,开发之间的接口,选择测试规则,决定所需要的自动化程度测试维护:保存测试用例以供软件衍化时的复用,需要测试设计人员和自动化人员的合作,决定何时整理测试套件既需要策略又需要技巧,测试必须纳入配置管理测试文档:需要各方参与,每个测试都需记录“为什么要这么做”---规则和满足测试需求或者人工设计的测试基本原理,保证整个过程可追溯,在自动化的测试中做记录模型驱动式软件测试:持续的软件测试不同级别的测试:单元测试: 单独测试每一个单元(方法)模块测试: 测试每一个类、文件、模块或组件集成测试: 测试各个模块如何交互系统测试: 测试系统的总体功能性验收测试: 这个软件是否能够被用户所接受测试活动:软件需求:定义测试目标(规则)、定义计划系统设计:设计系统测试、设计验收测试、设计可用性测试(如果合适的话)中层设计:将系统测试具体化、制定集成测试和单元测试的计划、获取测试的支持工具、确定类集成的顺序详细设计:构建测试或者将测试具体化实现:创建测试用例、当单元构成完成后运行测试集成:运行集成测试系统部署:运行系统测试、验收测试、可用性测试使用和维护:收集用户的问题、进行回归测试软件测试中的若干问题重要的术语辨析:Validation Verification:Validation(确认) : 在软件开发末期评估软件以确保与先前需求相符合的过程Verification(验证) : 判断软件某一开发阶段的产品是否满足了在前面阶段建立的需求测试 质量保障(QA):测试的目的是寻找bug, 尽早地发现他们确保他们已经被修正。质量保障( QA )的目的是创建一个强制执行的标准和方法去提高开发过程以便了防止Bug的出现。静态测试动态测试:静态测试 : 不实际运行程序的测试,这包括代码审查和一些形式的分析,在发现某些特定类型的问题上很有效---特别是“潜在”的缺陷,即在程序被改动时会引发的问题动态测试: 用实际输入执行程序的测试Faults, Errors Failures:Software Fault : 软件代码中的一个静态缺陷Software Failure : 相对于需求或者其他队软件行为的描述而言,外部的不正确的行为Software Error : 由缺陷导致的内部的不正确的状态测试 调试:测试 : 寻找使得软件出错的输入调试 : 根据failure寻找缺陷(fault)的过程Fault Failure 模型,缺陷被发现的3个必要条件:可达性(reachability) : 包含缺陷的代码地址必须在软件运行时刻到达可感染(Infection) : 必须出现程序的错误状态可波及(Propagation): 被感染的状态必须可以导致一些输出的错误测试用例:测试用例的数值: 直接满足测试需求的数据可预测的结果 : 当软件满足预计的行为时,执行程序所产生的输出可观察性可控制性:软件可观察性(Software Observability) : 以其输出、对环境以及其他硬件软件部分的作用作为考量观察程序的容易程度。对设备,数据库或者远程文件有影响的软件具有较低的可观察性软件可控制性(Software Controllabili
文档评论(0)