《第7部分--软件测试等级-系统验收--北风ppt课件》由会员分享,可在线阅读,更多相关《第7部分--软件测试等级-系统验收--北风ppt课件(79页珍藏版)》请在金锄头文库上搜索。
1、软件测试等级软件测试等级- -系统验收系统验收北风网教师:小林系统测试验收测试本部分课程目标本部分课程目标 系统测试是测试软件系统和其他的系统元素(及硬件、数据库和人机交互信息)组合构成完整的计算机应用系统中所有的元素配合是否合适以及整个系统的功能、性能、执行强度、安全性等是否达到规定标准。系统测试系统测试功能测试性能测试安全测试配置测试兼容性测试易用性测试系统测试系统测试 功能测试是系统测试中最基本的测试,它不管软件内部的实现逻辑,主要根据产品的需求规格说明书和测试需求列表,验证产品的功能实现是否符合产品的需求规格。功能测试功能测试是否有不正确或遗漏了的功能?功能实现是否满足用户需求和系统设
2、计的隐含需求?能否正确地接受输入?能否正确地输出结果?功能测试主要发现的问题功能测试主要发现的问题对需求进行标号对可能出现的功能异常进行分类分析,并标号对功能需求进行分级对功能进行测试分析:可测性、如何测、可能的输入和输出脚本化和自动化测试策略测试策略性能测试是测试系统完成正确功能的效率,其中包括:系统功能实现的响应时间,并发用户(吞吐量),资源利用率。性能测试性能测试 压力测试:测试系统在其资源超负荷的情况下的表现。对于一个固定输入速率的单词处理响应时间;在一个非常短的时间内引入超负荷的数据容量;同时引入大量的操作;大量用户同时登陆。极端性能测试极端性能测试功能验证漏洞扫描模拟攻击侦听技术安
3、全测试安全测试配置测试将验证软件与其所依赖硬件环境的依赖程度。测试中的硬件环境指进行测试所必需的服务器、客户端、网络连接设备,以及打印机、扫描仪等辅助硬件设备所构成的环境。所有软件都需向用户说明其运行的硬件环境,对于多层结构的软件系统来说,需要分别说明其服务器、客户端以及网络所需的环境。配置测试配置测试最低配置是否能够满足系统运行的需要。在推荐配置下系统的性能。考察软件对运行硬件环境有无特殊说明。为了满足不同的使用需求,软件系统能否运行在多种硬件配置环境下,并且系统功能和性能都能满足设计需求。配置测试内容配置测试内容分离配置缺陷分离配置缺陷 分离缺陷是配置问题而不仅是普通缺陷最可靠的办法是,在
4、另外一台有完全不同配置的计算机上一步步执行导致问题的相同操作。如果缺陷没有产生,就极有可能是配置问题。如果缺陷在多种配置中出现,就可能只有普通缺陷。配置测试配置测试配置测试流程配置测试流程确定所需的硬件类型;确定哪些硬件商标、型号和驱动程序可用;确定可用的硬件特性、模式和选项;将明确后的硬件配置缩减为可控制范围;明确使用硬件配置的软件唯一特性;设计在每一种配置中执行的测试案例;在每种配置中执行测试;反复测试直到小组对结果满意为止。配置测试配置测试被测系统需要打印吗?被测系统需要发出声音吗?被测系统处理图形和图片吗?想一想需要用什么硬件使用被测系统?确定所需的硬件类型确定所需的硬件类型我们可以从
5、近期的杂志和出版物上看到正在(曾经)流行的硬件。研究硬件的等价类:设备的相互翻版、大同小异。测试的驱动程序:操作系统自带,硬件附带的,网上提供的。确定哪些硬件商标型号和驱动程序可用确定哪些硬件商标型号和驱动程序可用每一种设备都有选项,软件没有必要全部支持。 游戏就是一个好例子。许多游戏要求最小颜色数和分辨率。如果配置低于该要求,游戏就不能运行。确定可用的硬件特性、模式和选项确定可用的硬件特性、模式和选项购买:经常使用的。与硬件生产厂家联系,租借或赠送。向公司全体人员征集。向商场租用。到测试中心测试。硬件的获取硬件的获取测试软件要求的最低配置和推荐配置的合理性和正确性。主要指标包括对机型的要求和
6、对CPU、内存、硬盘的要求。整机的配置测试整机的配置测试CPU。应用软件及客户端软件对CPU的推荐配置要求应当比目前主流CPU略低,服务器端的最低配置必须能够使软件正常工作,推荐配置应保证软硬件构成的系统在正常业务的压力负载下,CPU资源占用平均值不超过75%。内存。测试内存的占用情况。硬盘。对于特殊软件的硬件配置测试需考虑硬盘的转速、缓存容量、寻址时间等参数。整机的配置测试整机的配置测试安装或能够调用系统安装的打印机;能打印测试页;能选择不同幅面的纸张;能选择打印精度;纸张横、纵打印调整功能;逐页打印功能;多份打印功能;具备双面打印机的打印机能够实现自动双面打印功能;网络打印机能够实现网络打
7、印功能。打印机的测试打印机的测试兼容性测试将验证软件与其所依赖软件环境如品台软件、其他软件的依赖程度。测试中的软件环境则指被测软件运行所需的操作系统、数据库、中间件、浏览器及与被测软件共存的其他应用软件等构成的环境。兼容性测试兼容性测试软件兼容性测试软件兼容性测试 是指检查软件之间是否正确地交互和共享信息。交互可以在同时运行于同一台计算机上,甚至在相隔几千公里通过互联网连接的不同计算机上的两个程序之间进行。交互还可以简化为在软盘上保存数据,然后拿到其他房间的计算机。兼容性测试兼容性测试从Web页面剪切文字,在字处理程序中打开的文档中粘贴。从电子表格程序保存账目数据,在另一个完全不同的电子表格程
8、序中读入。使照片修修饰软件在同一操作系统下的不同版本正常工作。升级到新的数据库程序,读入现存所有数据库,像老程序一样对其进行处理。兼容性测试例子兼容性测试例子如果对软件进行兼容性测试,需要解答以下问题:软件设计要求使用何种平台和应用程序?应该遵守何种定义软件之间交互的标准或者规范?软件使用何种数据与其他平台和软件交互和共享信息?兼容性测试兼容性测试目标平台和兼容性的应用程序的选择实际上是:管理人员和市场定位的任务。要熟悉客户基本情况的人来确定。确定软件需要兼容的版本。从项目管理的角度讲,使操作系统在满足用户要求的前提下,尽可能小是十分重要的。兼容性测试平台和版本选择兼容性测试平台和版本选择向前
9、兼容:是指可以使用软件的以前版本。向后兼容:是指可以使用软件的未来版本。 并非是所有软件或文件都要求向前兼容或者向后兼容。这是软件设计者需要决定的产品特性。测试人员就是编写测试用例,测试。兼容性测试兼容性测试兼容性测试软件选择依据兼容性测试软件选择依据流行程度。利用销售记录选择前100或多或1000个最流行的程序。年头。应该选择3年以内的程序和版本。类型。把软件分为画图、书写、财务、数据库、通信等类型。从每一种类型中选择测试软件。生产厂商。根据制作软件的公司来选择软件。兼容性测试兼容性测试Windows平台;Linux平台;UNIX平台;操作系统兼容性测试操作系统兼容性测试中间件浏览器支持软件
10、其他同类软件非同类软件其他软件的兼容性测试其他软件的兼容性测试在实际运行环境之外搭建模拟环境,导入部分或全部数据,在模拟环境中进行一次或数次模拟迁移的尝试。将现有数据进行备份,检查备份数据的正确性。如果有备份系统,则先将备份系统升级到新系统,保持主服务器的旧系统不动,切换至备份服务器运行一周,若一切正常再升级主服务器,升级成功后切换至主服务器运行。新旧系统数据迁移的实现与测试新旧系统数据迁移的实现与测试在实际测试中,要按照软件类型、需求定位和测试环境进行选择,并以此为思路扩充测试方案。配置和兼容测试应当充分验证软件定义的适用范围,为开发者和用户提供软件使用的信心。配置和兼容性测试要尽早进行。小
11、结小结易用性是交互适应性、实用性和有效性的集中体现。人体工程学:是一门将日常使用的东西设计为易于使用和实用性强的学科。易用性测试易用性测试用于与软件程序交互的方式称为用户界面或UI。早期计算机的用户界面是触发开关和发光二极管。第二代纸带、穿孔卡和电传打字机。第三代视频监视器和简单的行编辑器。现在个人计算机都有复杂的图形用户界面(GUI)。用户界面(用户界面(UIUI) 由于易用性缺陷的主观性,因此测试员和UI设计人员经常产生不同意见。UI通常被当做创建者的作品,而测试人员说某处是错误,就可能挫伤“艺术家”。易用性是软件缺陷中的敏感问题。易用性测试易用性测试优秀优秀UIUI常见的常见的7 7个要
12、素个要素符合标准和规范直观性一致性灵活性舒适性正确性实用性易用性测试易用性测试符合标准和规范符合标准和规范 重要的用户界面要符合现行标准和规范,这些标准和规范由软件易用性专家开发。它们是由大量正式测试、经验、技巧和错误得出的方便用户的规则。如果软件严格遵守这些规则,优秀UI的其他要素就自然具备。易用性测试易用性测试考虑以下问题来衡量软件的直观程度考虑以下问题来衡量软件的直观程度:用户界面是否洁净、不唐突、不拥挤?UI的组织和布局合理吗?是否允许用户轻松地从一个功能转移到另一个功能?下一步做什么明显吗?任何时刻都可以决定放弃或者退回、退出吗?菜单或者窗口是否深藏不露?有多余功能吗?软件整体抑或局
13、部是否做得太深?易用性测试易用性测试 一致性:用户的使用习惯性强,希望一个程序的操一致性:用户的使用习惯性强,希望一个程序的操作方式能够带到另一个程序中。在审查软件一致性作方式能够带到另一个程序中。在审查软件一致性时要考虑以下术语:时要考虑以下术语:快捷键和菜单选项。术语和命令。听众。按钮位置和等价的按钮。易用性测试易用性测试灵活性表现在灵活性表现在:用户喜欢选择不要太多,但是足以允用户喜欢选择不要太多,但是足以允许他们选择做什么和怎么做。许他们选择做什么和怎么做。状态跳转。状态终止和跳过。数据输入和输出。易用性测试易用性测试舒适性舒适性如何鉴别软件舒适性的一些好想法:如何鉴别软件舒适性的一些
14、好想法:恰当。软件外观和感觉应该与所做的工作和使用者相符。错误处理。程序应该在用户执行严重错误的操作之前提出警告,并且允许用户恢复由于错误操作导致丢失的数据。性能。快不见得是好事。不少程序的错误提示信息一闪而过,无法看清。如果操作缓慢易用性测试易用性测试正确性正确性: :就是测试就是测试UIUI是否做了该做的是。是否做了该做的是。市场定位偏差:有没有多余的或者遗漏的功能,或者某些功能执行了与市场宣传材料不符的操作?语言和拼写:程序员常常能制造出非常有趣的用户信息。不良媒体:图标是否同样大小?是否具有相同的调色板?声音是否应该有相同的格式和采样率?所见即所得。保证UI所说的就是实际得到的。易用性
15、测试易用性测试实用性实用性这不是指软件本身是否实用,而是指具体特性是否实用。在审查产品说明书、准备测试或者实际测试时,想一想看到的特性对软件是否有实际价值。它们有助于用户执行软件设计的功能吗?如果认为它们没必要,就要研究一下找出它们存在于软件中的原因。易用性测试易用性测试窗口窗口窗口能否基于相关的输入或菜单命令适当的打开窗口能否改变大小、移动和滚动窗口中的数据能否用鼠标、功能键、方向箭头和键盘操作当被覆盖的窗口重新调用后,所有相关功能是否可操作GUIGUI常见的测试要求常见的测试要求能否使用所有窗口的相关功能,所有相关功能是否可操作相关的下拉式菜单,工具条,滚动条,对话框,按钮,图标和其它控制
16、有否?能否正常显示?完全可用?显示多窗口时,窗口名能否正确显示,活动窗口是否加亮GUIGUI常见的测试要求常见的测试要求使用多用户时,所有窗口是否能实时更新多次或不正确按鼠标是否会产生无法预测的结果窗口的声音、颜色提示和窗口的操作顺序是否符合需求窗口能否正确关闭GUIGUI常见的测试要求常见的测试要求数据项数据项字母、数据能否正确显示且输入系统图象方式数据项(如滚动条)是否正常工作数据输入、消失是否可以理解,能否识别非法数据GUIGUI常见的测试要求常见的测试要求下列式菜单和鼠标操作下列式菜单和鼠标操作菜单条显示在合适语言环境中应用程序的菜单是否显示系统相关特性下拉式操作是否正确,功能是否正确
17、菜单、调色板和工具条是否能正常的工作能否列出所有菜单功能和下拉式功能GUIGUI常见的测试要求常见的测试要求能否通过鼠标操作所有菜单的功能,通过文本命令激活每个菜单功能菜单功能随当前窗口操作加亮或变灰如果要求多次点击鼠标或鼠标有多个按钮时能否正确识别光标、处理指示器和识别指针能否随操作而适当改变GUIGUI常见的测试要求常见的测试要求系统测试的意义系统测试的方法和技巧小结小结Alpha测试:是在一个用户开发环境下进行的测试,也可以是开发机构内部的用户在模拟实际操作环境下进行的测试。Beta测试就是把产品有计划地分发到目标市场,从市场收集反馈信息,把关于反馈信息的评价制成易处理的数据表,再把这些
18、数据分发给所涉及的各个部门。验收测试验收测试通常在产品发布到市场之前,邀请公司的客户参与产品的测试工作。提升了产品的价值,因为它使那些“实际”的客户有机会把自己的意见渗透到公司产品的设计、功能和使用过程中。Beta测试并不是一种实验室的测试。BetaBeta测试的特点测试的特点目标市场可使用的测试产品要求测试结果BetaBeta测试的实施条件测试的实施条件 一个良好的Beta测试过程就像一个团队,只有每一个成员都充分地发挥自己的所用,它才能有效地运转。因此,所有优秀的组织都有一个结构或者层次结构来保证这个“命令链”的存在。建立建立BetaBeta测试小组测试小组BetaBeta测试的组织结构图
19、测试的组织结构图BetaBeta测试经理主要负责全面贯彻和实行测试经理主要负责全面贯彻和实行BetaBeta测试过程测试过程职责:职责:主要负责设计和改善整个Beta测试过程的策略和进程。应该与产品开发的相关人员保持一种融洽的关系。负责对Beta测试人员的培训。建立一个清晰而长远的测试计划。应该对整个测试分发过程有着全面的了解。BetaBeta测试经理测试经理BetaBeta工程师的首要任务就是选择有一定的技术背景,工程师的首要任务就是选择有一定的技术背景,能够胜任能够胜任BetaBeta测试的测试参与者。测试的测试参与者。负责和Beta测试参与人员联系。及时回答测试参与者提出的问题。确认测试
20、参与者是否真正履行了测试义务。检查测试 结果。与测试经理探讨测试预算问题BetaBeta测试工程师测试工程师 Beta测试协调员是Beta测试团队的核心人物。主要负责处理一些琐碎的事情,如运输、软件复印、产品分发、物品整理,以及其他一些简单却耗时的工作,因此Beta测试协调员所做的工作是“维护”Beta测试的正常运转。BetaBeta测试协调员测试协调员BetaBeta测试过程测试过程 对于Beta测试经理来所说,全面了解产品的最好方法就是获取一份该产品的需求文档,详细研读一番。如果建立需求文档不是公司产品开发过程的一部分,那么功能说明书或者其他设计文档也可以有助于分析产品的特征。获取产品的需
21、求文档获取产品的需求文档 队列是关于测试的一个时间表,它包括即将开队列是关于测试的一个时间表,它包括即将开始的测试,和正在进行的测试。始的测试,和正在进行的测试。可以清晰地看到将要进行的下一个项目。可以使全体开发成员对项目的进展情况一目了然。队列是一种表示项目优先级、记录项目进展的简单有效的方法。把项目加入队列把项目加入队列 测试计划是一份全面的文档,用于给项目团队提供关于Beta测试的概述。是团队沟通的基础,是执行测试的委托书。编写编写BetaBeta测试计划测试计划产品培训设计使用产品说明、阅读技术手册、了解其产品培训设计使用产品说明、阅读技术手册、了解其他类似的产品等内容。他类似的产品等
22、内容。测试小组的专业技能会在多个方面使整个团队受益。经过良好培训的测试小组可以在一个自我控制的环境中展开工作。产品培训的结果自然会有助于小组成员对产品后续版本及其衍生产品的了解。产品培训产品培训收集测试材料的时机。建立一个对这些材料进行分类和跟踪的系统。在分发测试材料的保管。获取测试材料获取测试材料选择规则选择过程的时间长短选定测试参与者后,在开始进行测试之前的时间把握。选择测试人员选择测试人员人数评估申请者测试参与者的素质特性测试参与者的技术特征选择申请者考虑因素选择申请者考虑因素在确定测试标准时,最重要的是要制订测试目标。测试标准在开始测试之前可能会修改多次。测试标准要得到测试小组和开发小
23、组的认可。建立测试标准建立测试标准测试应该进行多长时间?基于产品当前的状态,客户使用过产品后会对产品有负面的评价吗?存在问题是否影响执行Beta测试吗?考虑到这些问题是否还应该继续测试过程?评估测试评估测试保密协议软件许可协议测试合同法律协议法律协议产品分发是一个非常专业,并且要细心谨慎完成的过产品分发是一个非常专业,并且要细心谨慎完成的过程。程。欢迎信测试标准测试包装附件分发测试材料分发测试材料交流调配时间专业化管理测试参与者管理测试参与者响应的作用尊重测试参与者合作关系建立联系交流态度交流态度交流直呼其名原则有魔力的词汇保持职业态度写信包装用户界面专业的精神专业的精神测试参与者疲惫未参与的测试参与者错误的动机竞争的伤害识别错误识别错误感觉和价值赢得奖励奖励的平衡设计奖励方案设计奖励方案技术数据营销数据分发测试数据分发测试数据不要请求娱乐与工作按比例逐步选择价值评价共生严肃的态度BetaBeta测试的特性测试的特性关闭测试参与者关闭文档测试数据归档Beta测试完成关闭关闭BetaBeta测试测试为什么进行Beta测试?Beta测试包括那些步骤?如何选择高效的Beta测试参与者?如何高效的获得Beta测试结果?小结小结