软件测试复习资料.docx

上传人:b****7 文档编号:10810644 上传时间:2023-02-23 格式:DOCX 页数:16 大小:23.08KB
下载 相关 举报
软件测试复习资料.docx_第1页
第1页 / 共16页
软件测试复习资料.docx_第2页
第2页 / 共16页
软件测试复习资料.docx_第3页
第3页 / 共16页
软件测试复习资料.docx_第4页
第4页 / 共16页
软件测试复习资料.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

软件测试复习资料.docx

《软件测试复习资料.docx》由会员分享,可在线阅读,更多相关《软件测试复习资料.docx(16页珍藏版)》请在冰豆网上搜索。

软件测试复习资料.docx

软件测试复习资料

第1章

软件测试是由“验证(Verification)”和“有效性确认(Validation)”活动构成的整体:

“验证”是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性;“有效性确认”是确认所开发的软件是否满足用户真正需求的活动。

软件测试和软件开发的关系是什么?

(P10-12)

第2章

软件质量:

软件产品具有满足规定的或隐含要求能力要求有关的特征与特征总和。

软件产品质量的属性:

-功能性Functionality

-可用性Usability(简单安装;轻松使用;友好界面)

-可靠性Reliability(用户使用的根本)

-性能Performance

-容量Capacity

-可测量性Scalability

-可维护性Servicemanageability

-兼容性Compatibility

-可扩展性Extensibility

软件缺陷一个标准的定义:

从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;

从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。

软件缺陷产生的主要原因:

1.技术问题。

2.软件本身。

3.团队工作。

软件缺陷的的构成:

规格说明书,设计,代码,其他。

软件产品规格说明书为什么是软件缺陷存在最多的地方?

(P19)

软件评审的目的?

(P22)

软件评审是什么?

(P22)

软件评审的对象分为:

管理评审,技术评审,文档评审和流程评审。

软件质量保证是通过对软件产品和活动有计划的进行评审和审计来验证软件是否合乎标准的系统工程活动。

SQA与软件测试有什么关系和区别?

(P23)

软件测试的分类:

(P24)

按测试的对象或范围分类,如单元测试、文档测试、系统测试等)。

按测试目的分类,如功能测试、回归测试、性能测试、可靠性测试、安全性测试和兼容性测试等。

根据测试过程中被测软件是否被执行,分为静态测试和动态测试。

根据是否针对系统的内部结构和具体实现算法来完成测试,可分为白盒测试和黑盒测试。

软件测试的整个过程包括8个阶段:

1规格说明书审查。

2系统和程序设计审查。

3单元测试。

4集成测试。

5功能测试。

6系统测试。

7安装测试。

8验收测试。

软件测试工作范畴分为2个层次:

软件测试工作的组织与管理:

制定测试策略、测试计划,确认所采用的测试方法与规范,控制测试进度,管理测试资源。

测试工作的实施:

编制符合标准的测试文档,搭建测试环境,开发测试脚本、与开发组织协作实现各阶段的测试活动。

软件测试工作流程概括为下列6个主要方面:

(P28-29)

1测试组织和管理2测试计划3测试用例设计4测试实施5测试结果分析6测试评审与报告

第3章

白盒测试的定义?

(P31)

白盒测试的具体方法有:

逻辑覆盖、循环覆盖、基本路径覆盖等。

白盒测试的基本原则?

(P31)

黑盒测试的定义?

(P38)

黑盒测试的具体方法有:

等价类划分法、边界值分析法、错误推测法、因果图法等。

静态测试的定义?

(P50)

动态测试的定义?

(P50)

主动测试方法:

测试人员主动向被测试对象发送请求、或借助数据、事件驱动被测试对象的行为,从而验证被测试对象的反应或输出结果。

被动测试方法:

测试人员不干预产品的运行,而是被动地监控产品在实际环境中运行,通过一定的被动机制来获得系统运行的数据,包括输入、输出数据。

第4章

IBM统一过程(RUP)是以用例驱动、以体系结构为中心的软件开发迭代过程。

RUP把软件的生命周期划分为4个阶段:

先启阶段、精化阶段、构建阶段和产品化阶段。

TMap(TestManagementApproach,测试管理方法)是一种结构化的、基于风险策略的测试方法体系,目的能更早地发现缺陷,以最小的成本、有效地、彻底地完成测试任务,以减少软件发布后的支持成本。

TMap所定义的测试生命周期由计划和控制、准备、说明、执行和完成等阶段组成。

TMap的4项基石:

与软件开发生命周期一致的测试活动生命周期(L);

坚实的组织融合(O);

正确的基础设施和工具(I);

可用的技术(T)。

软件测试的标准分为5个级别:

国际标准;国家标准;行业标准;企业(机构)规范;项目规范。

软件测试规范就是对软件测试的流程过程化并对每一个过程元素进行明确的界定,形成完整的规范体系。

软件测试规范的内容:

角色的确定;进入的准则;输入项;活动过程;输出项;验证与确认;退出的准则;度量。

软件测试管理与评价体系的目标:

1监视和测量软件产品

2识别和控制不符合要求的产品

3验证产品设计和开发

4监视和测量软件过程

建立软件测试管理体系的6个步骤:

(P91)

第5章

单元测试是对软件基本组成单元进行的测试。

单元测试的基本过程由以下5个步骤:

(P96)

为什么要进行单元测试?

(P96)

1尽早发现错误。

错误发现越早,成本越低。

开发人员过于自信,后期复杂度高,发现解决BUG困难。

2检查代码是否符合设计和规范。

单元测试的主要目标:

单元模块被正确编码。

单元测试的任务:

1单元中所有独立执行路径测试

2单元局部数据结构测试

3单元接口测试

4单元边界条件测试

5单元的各条错误处理通路测试

6内存分析

静态测试技术:

不运行被测试程序,对代码通过检查、阅读进行分析。

走查和审查的对比:

(P104)

驱动程序的定义:

(P107)

桩程序的定义:

(P107)

单元测试的管理分为5个阶段:

(P109)

Junit的优点

1可以使测试代码与产品代码分开,这更有利于代码的打包发布和测试代码的管理。

2针对某一个类的测试代码,通地较少的改动便可以应用另一个类的测试,JUnit提供了一个编写测试类的框架,使测试代码的编写更加方便。

3易于集成到程序中的构建过程中,JUnit和Ant的结合还可以实施增量开发。

4JUnit的源代码是公开的,故而可以进行二次开发。

5JUnit具有很强的扩展性,可以方便地对JUnit进行扩展。

第6章

集成测试定义:

集成测试是将已分别通过测试的单元按设计要求组合起来再进行的测试,以检查这些单元之间的接口是否存在问题。

集成测试前的准备:

1人员安排2测试计划3测试内容4集成模式5测试方法

集成测试的2种模式:

非渐增式测试模式:

先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序,如大棒模式。

渐增式测试模式:

把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。

以上两种模式的优缺点:

(P126)

回归测试的目的:

1所做的修改达到了预定的目的,如错误得到了改正,新功能得到了实现,能够适应新的运行环境等;

2不影响软件原有功能的正确性。

回归测试的方法:

1再测试全部用例

2基于风险选择测试

3基于操作剖面选择测试

4再测试修改的部分

性能测试步骤:

1确定性能测试需求

2根据测试需求,选择测试工具和开发相应的测试脚本

3建立性能测试负载模型,就是确定并发虚拟用户的数量、每次请求的数据量、思考时间、加载方式和持续加载的时间等

4执行性能测试

5结果分析,并提交性能测试报告

压力测试(Stresstest),也称为强度测试、负载测试。

压力测试是模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行测试软件,来测试被测系统的性能、可靠性、稳定性等。

容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下还能保持主要功能正常运行。

容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。

安全性测试是检查系统对非法侵入的防范能力。

安全性测试方法有3种:

(P140)

软件可靠性主要包括以下三个要素:

1规定的时间;2规定的环境条件;3规定的功能。

容错性测试是检查软件在异常条件下自身是否具有防护性的措施或者某种灾难性恢复的手段。

容错性测试包括两个方面:

1输入异常数据或进行异常操作,以检验系统的保护性。

如果系统的容错性好的话,系统只给出提示或内部消化掉,而不会导致系统出错甚至崩溃。

2灾难恢复性测试。

通过各种手段,让软件强制性地发生故障,然后验证系统已保存的用户数据是否丢失、系统和数据是否能尽快恢复。

第7章

验收测试(AcceptanceTest):

在软件产品完成了功能测试和系统测试之后、产品发布之前所进行的软件测试活动它是技术测试的最后一个阶段,也称为交付测试。

验收测试的测试内容:

验证系统是否达到了用户需求规格说明书(可能包括项目或产品验收准则)中的要求,测试试图尽可能地发现软件中存留的缺陷,从而为软件进一步改善提供帮助,并保证系统或软件产品最终被用户接受。

主要包括易用性测试、兼容性测试、安装测试、文档(如用户手册、操作手册等)测试等几个方面的内容。

验收测试的测试步骤:

1制定测试计划,测试项,测试策略及验收通过准则,并经过客户参与的计划评审。

2建立测试环境,设计测试用例,并经过评审。

3准备测试数据,执行测试用例,记录测试结果。

4分析测试结果,根据验收通过准则分析测试结果,作出验收是否通过及测试评价。

5提交测试报告。

验收测试通过标准:

1完全执行了验收测试计划中的每个测试用例。

2在验收测试中发现的错误已经得到修改并且通过了测试或者经过评估留待下一版本中修改。

 

3完成软件验收测试报告。

用户界面的7个要素:

符合标准和规范。

直观性。

一致性。

灵活性。

舒适性。

正确性。

实用性。

兼容性测试包括:

软件兼容性、数据共享兼容性、硬件兼容性三个方面。

软件兼容性测试是指验证软件之间是否正确地交互和共享信息。

数据共享兼容性表现在以下3个方面:

1剪切、复制和粘贴

2文件的存取

3文件导入和导出

恢复测试主要检查系统的容错能力。

当系统出错时,能否在指定时间间隔内修正错误或重新启动系统。

文档的种类:

1联机帮助文档或用户手册;

2指南和向导;

3安装、设置指南;

4示例及模板;

5错误提示信息;

6用于演示的图像和声音;

7授权/注册登记表及用户许可协议;

8软件的包装、广告宣传材料。

文档测试主要检查文档的正确性、完备性、易理解性和一致性。

(P158)

第8章

面向对象层次结构测试重点:

1对认定对象的测试

2对认定结构的测试

3构造的类层次结构的测试

线程是一个操作系统进程内能够独立运行的内容,拥有自己的计数器和本地数据。

线程是能够被调度执行的最小单位。

第10章

软件国际化和软件本地化的定义?

(P205-206)

为什么要进行软件本地化?

(P205)

软件本地化和软件国际化有什么关系?

(P205-206)

字符集是操作系统中所使用的字符映射表。

软件国际化的规范可以归纳为以下5点:

1切换语言的机制。

2与语言无关的输出接口。

3与语言无关的输入接口和标准的输入协议。

4资源文件的国际化。

5支持和包容本地化数据格式。

软件本地化的基本步骤:

1建立配置管理体系,跟踪目标语言各个版本的源代码;

2创造和维护术语表;

3源语言代码和资源文件分离、或提取需要本地化的文本;

4把分离或提取的文本、图片等翻译成目标语言;

5把翻译好的文本、图片重新检入目标语言的源代码版本;

6如果需要,编译目标语言的源代码;

7测试翻译后的软件,调整UI以适应翻译后的文本;

8测试本地化后的软件,确保格式和内容都正确。

本地化测试包括6个方面:

1功能性测试,所有基本功能、安装、升级等测试;

2翻译测试,包括语言完整性、术语准确性等的检查;

3可用性测试,包括用户界面、度量衡和时区等;

4兼容性调试,包括硬件兼容性、版本兼容性等测试;

5文化、宗教、喜好等适用性测试;

6手册验证,包括联机文件、在线帮助、PDF文件等测试。

本地化测试的技术问题有:

1数据格式

2页面显示和布局

3配置和兼容性问题

第11章

自动化测试(automatedtest)的定义:

(P223-225)

自动化测试的优势:

1自动运行的速度快,是手工无法相比的。

2永不疲劳

3测试结果准确。

例如搜索用时及时是0.33秒或0.24秒,系统都会发现问题,不会忽视任何差异。

4可靠。

5可复用性。

一旦完成所用的测试脚本,可以一劳永逸运行很多遍。

6特别的能力。

自动化测试带来的好处:

1缩短软件开发测试周期

2更高质量的产品

3软件过程更规范

4测试效率高,充分利用硬件资源

5节省人力资源,降低测试成本

6增强测试的稳定性和可靠性

7提高软件测试的准确度和精确度

8手工不能做的事情,软件测试工具可以完成

9高昂的团队士气

第12章

软件测试的人员的责任:

1发现软件程序、系统或产品中所有的问题;

2尽早地发现问题;

3督促开发人员尽快地解决程序中的缺陷;

4帮助项目管理人员制定合理的开发计划;

5并对问题进行分析、分类总结和跟踪;

6帮助改善开发流程、提高产品开发效率;

7提高程序编写的规范性、易读性、可维护性等。

测试团队饿基本构成:

1QA/测试经理:

人员管理,资源调配、测试方法改进等;

2实验室管理人员:

设置、配置和维护实验室的测试环境

3内审员:

审查流程,建立测试模板,跟踪缺陷测试报告的质量等;

4测试组长:

负责项目的管理、测试计划、测试用例、任务安排等;

5测试设计人员/资深测试工程师:

产品设计规格说明书的审查、测试用例的设计、技术难题的解决、培训和指导、实际测试任务的执行;

6一般(初级)测试工程师:

执行测试用例和相关的测试任务。

优秀测试工程师应具备的素质:

1高度的责任感2非常好的沟通能力、幽默感3技术能力4自信心5耐心6怀疑一切的精神7适度的好奇心8洞察力9反向思维和发散思维能力10记忆力

第14章

测试用例的作用:

1有效性2可复用性3易组织性4可评估性5可管理性

测试用例的标准模板中主要元素如下:

1标志符(Identification)

2测试项(TestItems)

3测试环境要求

4输入标准(InputCriteria)

5输出标准(OutputCriteria)

6测试用例之间的关联

测试用例设计中考虑因素:

1具有代表性、典型性

2寻求系统设计、功能设计的弱点

3测试用例需要考虑到正确的输入,也需要考虑错误的或者异常的输入,以及需要分析怎样使得这样的错误或者异常能够发生

4考虑用户实际使用场景

测试用例设计的基本原则:

1尽量避免含糊的测试用例

2尽量将具有相类似功能的测试用例抽象并归类

3尽量避免冗长和复杂的测试用例

测试套件的定义?

(P318)

测试用例的组织方法:

1按照程序的功能模块组织

2按照测试用例的类型组织

3按照测试用例的优先级组织

跟踪测试用例包括两个方面:

(P320)

1测试用例执行的跟踪;

2测试用例覆盖率的跟踪。

跟踪测试用例的方法:

1书面文档2电子表格3数据库

测试用例的覆盖率的定义?

(P323)

第15章

软件缺陷生命周期指的是一个软件缺陷被发现、报告到这个缺陷被修复、验证直至最后关闭的完整过程。

一个基本的软件缺陷生命周期包含了3个状态:

“新打开的”、“已修正”和“已关闭”。

软件缺陷的严重性级别:

(P326)

1致命的(fatal)2严重的(critical)3一般的(major)4微小的(minor)

软件缺陷的优先级级别:

(P327)

1立即解决2高优先级3正常排队4低优先级

缺陷描述的基本要求:

1单一准确

2可以再现

3完整统一

4短小简练

5特定条件

6补充完善

8不做评价

优秀的缺陷报告和散漫的缺陷报告的主要区别?

分离和再现软件缺陷的步骤?

第17章

 

软件测试项目管理的内容:

1软件项目的测试过程管理;

2软件自动化解决方案和实施;

3软件项目的测试资源分配和进度控制;

4软件测试工作和产品质量的风险评估和控制;

5软件版本定义、测试范围变化的控制等;

6软件构建和发布等监控。

测试项目管理的特点:

1软件测试存在较大风险,质量标准定义不准确、任务边界模糊

2软件测试项目的变化控制和预警分析要求高。

3软件测试管理要求更严格和细致

4测试任务的分配难

5测试要求人力资源十分稳定

6测试人员在待遇、地位可能受到一些不公正的待遇

测试进入的准则:

1清楚了解项目的整体计划框架;

2完成需求规格说明书评审;

3技术知识或业务知识的储备;

4标准环境;

5技术设计文档是测试用例设计的重要参考资料;

6足够的资源;

7人员组织结构、成员及其责任已确定。

软件测试计划是指导测试过程的纲领性文件,描述测试活动的范围、方法、策略、资源、任务安排和进度等,并确定测试项、哪些功能特性将被测试、哪些功能特性将无需测试,识别测试过程中的风险。

测试设计分为2个层次:

(P364)

1高层次的设计

2低层次的设计

有效管理Bug的规则和流程:

(P366)

里程碑的定义:

(P369)

测试文档存储的规划、设计要考虑以下因素:

(P378)

1强大的搜索功能

2安全性

3目录结构

4操作要灵活

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1