软件工程专业总复习.ppt
《软件工程专业总复习.ppt》由会员分享,可在线阅读,更多相关《软件工程专业总复习.ppt(68页珍藏版)》请在沃文网上搜索。
1、20 三月 2024复习资料复习资料Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍测试基本步骤:测试基本步骤:l测试资料的收集与整理;测试资料的收集与整理;l熟悉所要测试的软件;熟悉所要测试的软件;l测试方案的制定;测试方案的制定;l测试计划的编写;测试计划的编写;l测试实例设计与编写;测试实例设计与编写;l测试准备工作;测试准备工作;l测试操作;测试操作;l软件缺陷记录及报告;软件缺陷记录及报告;l修改充实测试用例及测修改充实测试用例及测试计划书;试计划书;l测试自动化程序的编写;测试自动化程序的
2、编写;l修改、增加测试程序;修改、增加测试程序;Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业相关知识介绍相关知识介绍测试所需的资料:测试所需的资料:l软件及测试基本情况(进度、进展情况、分工情况软件及测试基本情况(进度、进展情况、分工情况等);等);l软件目前主要存在的问题;软件目前主要存在的问题;l作为测试员,你将负责哪部分测试?作为测试员,你将负责哪部分测试?l发现缺陷后,你需要跟那个程序员沟通?发现缺陷后,你需要跟那个程序员沟通?l需要使用何种测试软件?需要使用何种测试软件?l使用何种缺陷报告单?使用何种缺陷报告单
3、?l有哪些关于软件的文件、说明、定义可供参考?有哪些关于软件的文件、说明、定义可供参考?Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业软件缺陷(软件缺陷(Bug)的定义)的定义 文档是软件的一部分,那么文档中的错误算不算文档是软件的一部分,那么文档中的错误算不算是是Bug?还有,我运行一个软件,没有产生任何故障,但还有,我运行一个软件,没有产生任何故障,但是软件实现的功能却不符合我们的要求,这算不是软件实现的功能却不符合我们的要求,这算不算是算是Bug呢?呢?比如,用户需要在打印报表时按金额进行排序,比如,用户需要在打印报
4、表时按金额进行排序,结果却是按姓名排序?结果却是按姓名排序?有的书上称软件缺陷是程序运行时出现的故障。有的书上称软件缺陷是程序运行时出现的故障。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业 软件未达到产品说明书中规定的功能。软件未达到产品说明书中规定的功能。软件出现了说明书中指明不会出现的错误。软件出现了说明书中指明不会出现的错误。什么是什么是BUG?2001年,美国年,美国Ron Pattern在在软件测试软件测试中说明,中说明,只要软件出现的问题符合下列情况之一就是只要软件出现的问题符合下列情况之一就是Bug。软件功
5、能超出了说明书制定的范围。软件功能超出了说明书制定的范围。软件未达到说明书中指定应达到的目标。软件未达到说明书中指定应达到的目标。用户认为软件难理解或不易使用的问题。用户认为软件难理解或不易使用的问题。从这个说明出发,我们可以将常见的软件从这个说明出发,我们可以将常见的软件Bug分成分成3种类型。种类型。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业缺陷报告单缺陷报告单v定义定义缺陷问题报告单是描述缺陷细节的文档,包括缺陷的编号、被测软件及其版本、优先级、严重程度、谁来修复缺陷等等v优良的缺陷报告应该具备准确、清晰、简洁、
6、完整,统一的特点,还需优良的缺陷报告应该具备准确、清晰、简洁、完整,统一的特点,还需要注意要注意给每个缺陷问题报告单分配一个唯一的标识以有利于缺陷的后续处理、查询和管理维护等活动。站在为他人服务的立场上编写缺陷问题报告单注意语句措词,不要涉及对他人的评价和自己情绪的宣泄只报告问题不要试图解决问题一个缺陷问题报告单里只报告一个缺陷Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业缺陷问题报告单示例缺陷问题报告单示例v缺陷问题报告单张三Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学
7、与技术学院软件工程专业测试用例是什么测试用例是什么v定义定义针对被测试项的测试输入,执行条件和预期结果的集合(是挑选出来的具有代表性的输入组合)挑选输入组合的方法就是测试用例设计方法测试用例设计方法测试用例是软件测试的灵魂,体现着软件测试工程师的职业价值。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业测试用例实现测试用例实现用例编号IsTriangle_ST_001优先级高测试项等边三角形判定功能执行条件1.程序可以正常运行测试过程1.运行程序isTriangle.class2.在第一条边中输入60,第二条边中输入60,第
8、三条边中输入60 3.单击“告诉我结果l”按钮 预期结果等边三角形实际执行结果v一个用自然语言实现的测试用例实例v不同的组织可能使用不同的测试用例模版Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业测试用例是什么测试用例是什么v定义定义针对被测试项的针对被测试项的测试输入,执行条件和预期结果的集合测试输入,执行条件和预期结果的集合完全的测试是不可能的完全的测试是不可能的,必须挑选出具有,必须挑选出具有代表性的有效代表性的有效的的输入组合,挑选输入组合的方法就是测试用例设计方输入组合,挑选输入组合的方法就是测试用例设计方法法测
9、试用例设计是软件测试的灵魂,体现着软件测试工程测试用例设计是软件测试的灵魂,体现着软件测试工程师的职业价值。测试用例可以用师的职业价值。测试用例可以用结构化自然语言结构化自然语言描述,描述,也可以用也可以用编程语言编程语言实现实现。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业高质量测试用例的属性高质量测试用例的属性v高质量测试用例的四个属性高质量测试用例的四个属性有效性是否能够发现缺陷或者至少可能发现缺陷仿效性衡量测试用例的代表程度,减少测试用例的数量经济性测试用例所花费的成本,包括设计、实现、调试和运行测试用例的成本
10、可维护性修改和维护测试用例的难易程度 Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业软件测试生命周期编号编号阶段阶段活动活动输出产物输出产物5.1测试计划 创建一个总体的测试计划,对软件测试活动作出整体规划。测试计划、风险评估表、测试策略 5.2测试分析 创建一个更加细致的测试计划,提炼质量需求形成测试需求(功能性)矩阵。重新修订完善的测试计划、测试需求矩阵5.3测试设计 设计完善测试用例,决定哪些用例自动化执行,哪些手工执行。测试用例、测试数据自动化测试脚本编制。测试规程/测试脚本、驱动器Testing2024/3/20
11、 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业5.4测试执行与回归测试按照测试计划要求执行测试并进行回归测试测试结果、缺陷报告、测试执行概要、测试过程改进计划(选项)5.5测试评估评估测试过程,编写测试报告测试报告,包括:测试日志、测试记录、缺陷报告和测试总结报告。软件测试生命周期Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业测试流程测试流程测试计划测试设计测试执行测试记录分析测试总结完毕缺陷跟踪针对测试目标,规定测试任务、资源分配、人员角色、进度安排等。根据测试计划,设计测试用例,
12、包括:测试步骤、测试场景、测试代码、测试数据(包括预期结果)。根据测试计划,配置测试环境,并手动或者自动执行测试设计。根据测试计划,忠实地记录测试执行的过程和结果。分析测试记录,如果发现与预期结果不同,确定并重现缺陷。检查测试设计是否全部执行完毕,缺陷是否全部关闭。记录、分发、评估、关闭缺陷报告。分析测试过程和缺陷报告,评估测试质量和测试效果,给出是否通过测试的建议。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业测试用例设计原则测试用例设计原则:v测试用例中的输入数据、操作应能够代表并覆盖测试用例中的输入数据、操作应能够代
13、表并覆盖各种合理及不合理各种合理及不合理、合法及非法合法及非法、边界及越界边界及越界、极限极限等情况。等情况。v一个测试用例尽量只一个测试用例尽量只对应一个测试点对应一个测试点。v测试用例的描述应清晰、易理解,保证测试步骤的唯一性、测试结果测试用例的描述应清晰、易理解,保证测试步骤的唯一性、测试结果的可判定性等。的可判定性等。v另外,我们在自动化测试时使用的另外,我们在自动化测试时使用的脚本脚本也是一种测试用例的表达形式。也是一种测试用例的表达形式。测试脚本的开发需要有一定的开发基础。测试脚本的开发需要有一定的开发基础。3.软件测试设计Testing2024/3/20 15:042024/3/
14、20 15:04山东建筑大学计算机科学与技术学院软件工程专业v回归测试:当一个周期测试执行完成后,需将测试情况与测试目标回归测试:当一个周期测试执行完成后,需将测试情况与测试目标进行比较,确定是否需第二周期的测试,即回归测试。进行比较,确定是否需第二周期的测试,即回归测试。v回归测试是针对已测试过的软件中出现的错误进行回归检查,同时回归测试是针对已测试过的软件中出现的错误进行回归检查,同时对系统新功能和特征进行测试。对系统新功能和特征进行测试。v回归测试过程中可从原设计文档中回归测试过程中可从原设计文档中选择或修改选择或修改原有测试方法和用例、原有测试方法和用例、或设计新的测试方法与用例,或设
15、计新的测试方法与用例,补充补充相应的测试数据、测试资源,建相应的测试数据、测试资源,建立相应的测试环境,确定相应的测试顺序。立相应的测试环境,确定相应的测试顺序。4.测试执行与回归测试Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业v回归测试原则。回归测试原则。1.文档功能和数据中文档功能和数据中所有改变的地方所有改变的地方都应被测试。都应被测试。2.受改变部分的或受要求的系统中的改变受改变部分的或受要求的系统中的改变影响的所有未改变的部分影响的所有未改变的部分都都应被测试。应被测试。3.所有所有其他部分应至少按样本进行测试
16、其他部分应至少按样本进行测试。4.测试执行与回归测试Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业q动态测试 静态测试和动态测试静态测试和动态测试q测试策略q静态测试所谓的静态测试(所谓的静态测试(Static Testig),是指不运行被测软件),是指不运行被测软件本身,仅通过人工分析或检查软本身,仅通过人工分析或检查软件的需求说明书、设计说明书等件的需求说明书、设计说明书等文档,源程序的文法、结构、过文档,源程序的文法、结构、过程和接口,以及软件界面等来验程和接口,以及软件界面等来验证软件正确性的测试过程。证软件正确性
17、的测试过程。代码审查代码走查桌面检查 静态分析Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业易用性测试(易用性测试(usability testing)易用性测试是指从软件使用的合理性易用性测试是指从软件使用的合理性和方便性等角度对软件系统进行检查,来和方便性等角度对软件系统进行检查,来发现软件中不方便用户使用的地方。发现软件中不方便用户使用的地方。其实生活中有很多易用性的例子可供我其实生活中有很多易用性的例子可供我们借鉴,比如水龙头有红色和蓝色标记;们借鉴,比如水龙头有红色和蓝色标记;超市里有各种购物用的小推车等,这些都
18、超市里有各种购物用的小推车等,这些都属于方便用户的例子。属于方便用户的例子。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业界面测试(界面测试(UI testing)UI是是User Interface的缩写。界面测试的缩写。界面测试虽然没有逻辑功能测试重要,但是也不容虽然没有逻辑功能测试重要,但是也不容忽视,因为现在用户对软件的要求越来越忽视,因为现在用户对软件的要求越来越高,一个美观得体的界面无疑会在众多同高,一个美观得体的界面无疑会在众多同类软件中脱颖而出。类软件中脱颖而出。比如:微软的比如:微软的Windows操作系
19、统界面;操作系统界面;QQ的个性化皮肤等。的个性化皮肤等。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业 界面测试(界面测试(UI testing)编号编号测试内容测试内容测试结果测试结果1菜单的基本功能实现菜单的基本功能实现2快捷键和热键没有重复快捷键和热键没有重复3字体大小统一,无错别字,无中英文混合字体大小统一,无错别字,无中英文混合4菜单的层次最好不要超过菜单的层次最好不要超过3层层5菜单的排列顺序要合理,将常用的功能放在前面菜单的排列顺序要合理,将常用的功能放在前面6菜单的分组合理,要将不同的功能组用分割线隔开菜
20、单的分组合理,要将不同的功能组用分割线隔开7菜单字体一般选择菜单字体一般选择5号字号字菜单的测试用例设计如下:菜单的测试用例设计如下:Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业安装测试安装测试 q配置和安装测试安装测试包括安装和卸载。安装是用户使用软件的第一步,也是安装测试包括安装和卸载。安装是用户使用软件的第一步,也是用户对软件的第一印象。如果一个软件安装的过程中漏洞百出的用户对软件的第一印象。如果一个软件安装的过程中漏洞百出的话,会是什么后果。所以,我们要把软件的安装测试作为一个独话,会是什么后果。所以,我们要把软
21、件的安装测试作为一个独立的任务去完成,编写软件的安装,卸载测试用例。立的任务去完成,编写软件的安装,卸载测试用例。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业q性能测试瓶颈瓶颈瓶颈性能测试是对软件运行的性能指标进行测试,全面的分析系统性能,预测系统的瓶颈,并判断系统集成之后在实际使用环境下能否稳定可靠的运行。系统测试系统测试 Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业性能测试性能测试 空间性能指标在测试时一般是给出空间性能指标在测试时一般是给出C
22、PU的利用率的利用率和和内存的内存的占有率占有率。比如。比如CPU的利用率为的利用率为10%,内存占有率为,内存占有率为20%。通过以上的分析,我们了解到软件的性能分为时间性能通过以上的分析,我们了解到软件的性能分为时间性能和空间性能两种,下面我们来看一下软件性能测试的分类。和空间性能两种,下面我们来看一下软件性能测试的分类。软件性能测试分为软件性能测试分为一般性能测试、稳定性测试、负载测试一般性能测试、稳定性测试、负载测试和压力测试和压力测试。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业1.一般性能测试一般性能测试 一
23、般性能测试指的是让被测系统在正常的软硬一般性能测试指的是让被测系统在正常的软硬件环境下运行,不向其施加任何压力的性能测试。件环境下运行,不向其施加任何压力的性能测试。对于单机版软件,我们在其推荐配置下运行软对于单机版软件,我们在其推荐配置下运行软件,检查件,检查CPU的利用率、内存的占有率等空间性的利用率、内存的占有率等空间性能指标以及软件中主要事务的平均响应时间等时能指标以及软件中主要事务的平均响应时间等时间性能指标。间性能指标。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业2.稳定性测试稳定性测试 稳定性测试,也叫可靠
24、性测试(稳定性测试,也叫可靠性测试(reliability testing),是指在规定环是指在规定环境,规定时间内,一个系统或其功能无故障运行的可能性。境,规定时间内,一个系统或其功能无故障运行的可能性。软件可靠性指标:软件可靠性指标:1.MTBF(Mean Time Between Failure)定义:是指两次相邻失效时间间隔的平均值。定义:是指两次相邻失效时间间隔的平均值。2.MTTR(Mean Time To Repair)定义:也叫平均修复时间,是从一次故障产生到故障恢复的间隔的平定义:也叫平均修复时间,是从一次故障产生到故障恢复的间隔的平均值。均值。下面我们通过一个简单的例子来看
25、一下具体的计算方法。下面我们通过一个简单的例子来看一下具体的计算方法。Testing2024/3/20 15:042024/3/20 15:04山东建筑大学计算机科学与技术学院软件工程专业3.负载测试负载测试负载测试和稳定性测试比较相似,都是让系统连负载测试和稳定性测试比较相似,都是让系统连续运行,区别就在于负载测试需要给系统施加刚续运行,区别就在于负载测试需要给系统施加刚好能承受的压力。好能承受的压力。负载测试(负载测试(load testing)是性能测试的一种,)是性能测试的一种,侧重于验证和评估在满足性能指标的情况下,侧重于验证和评估在满足性能指标的情况下,系统所能承受的最大负载量系统
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 专业 复习