




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件测试基础(一)一、软件测试的定义使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。二、软件测试的目的从用户角度出发,希望通过软件测试暴露软件隐藏的错误和缺陷,从而考虑是否接受该产品从软件开发者的角度出发,希望表明软件产品不存在错误和缺陷,验证软件能正确地实现用户需用户求,确立人们对软件质量的信心从软件管理者角度出发,希望花费有限的资源达到该软件的质量要求,经费和进度是其首要考虑的焦点三、软件测试的分类1、按开发阶段1.1、单元测试单元测试:是对软件组成单元进行测试。其目的是检验软件基本组成单位的正确性。测试的对象是软件设计的最小单位:模块。又称为模块测试测试阶段:编码后或编码前测试对象:最小模块测试人员:白盒测试工程师或开发人员测试依据:代码注释+详细设计文档测试方法:白盒测试测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试1.2、集成测试集成测试:集成测试也称联合测试(联调)、组装测试,将程序模块采用适当的集成策略组装起来,对系统的接口及集成后的功能进行正确性检测的测试工作。集成主要目的是检查软件单位之间的接口是否正确测试阶段:一般单元测试之后进行测试对象:模块间的接口测试人员:白盒测试工程师或开发工程师测试依据:单元测试的模块+概要设计文档测试方法:黑盒测试与白盒测试相结合测试内容:模块之间数据传输、模块之间功能冲突、模块组装功能正确性、全局数据结构、单模块缺陷对系统的影响1.3、系统测试系统测试:将软件系统看成是一个系统的测试。包括对功能、性能以及软件所运行的软硬件环境进行测试。时间大部分在系统测试执行阶段,包括回归测试和冒烟测试测试阶段:集成测试通过之后测试对象:整个系统(软、硬件)测试人员:黑盒测试工程师测试依据:需求规格说明文档测试方法:黑盒测试测试内容:功能、界面、可靠性、易用性、性能、兼容性、安全性等回归测试:回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试。随着系统的庞大,回归测试的成本越来越大,通过选择正确的回归测试策略来改进回归测试的效率和有效性是很有意义的冒烟测试:冒烟测试一般在开发人员开发完毕后送给测试人员来进行测试时,测试人员会先进行冒烟测试,保证基本功能正常,不阻碍后续的测试对象:每一个新编译的需要正式测试的软件版本目的:确认软件基本功能正常,可以进行后续的正式测试工作执行者:版本编译人员1.4、验收测试验收测试:验收测试是部署软件之前的最后一个测试操作。它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保软件准备就绪,按照项目合同、任务书、双方约定的验收依据文档,向软件购买都展示该软件系统满足原始需求测试阶段:系统测试通过之后测试对象:整个系统(包括软硬件)测试人员:主要是最终用户或者需求方测试依据:用户需求、验收标准测试方法:黑盒测试测试内容:同系统测试(功能…各类文档等)2、按测试实施组织2.1、α测试α测试:α测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。α测试的目的是评价软件产品的FLURPS(即功能、局域化、可使用性、可靠性、性能和支持),开发和测试人员不参与2.2、β测试β测试:β测试是一种验收测试。β测试由软件的最终用户们在一个或多个客房场所进行2.3、第三方:介于开发方和用户方间的组织的测试3、按测试执行方式3.1、静态测试静态测试:静态方法是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行来找错。分析如下:检查项:代码风格和规则审核;程序设计和结构的审核;业务逻辑的审核;走查、审查与技术复审手册静态质量:度量所依据的标准是ISO9126。在该标准中,软件的质量用以下几个方面来衡量,即功能性(Functionality)、可靠性(Reliability)、可用性(Usability)、有效性(Efficiency)、可维护性(Maintainability)、可移植性(Portability)代码静态分析和文档测试都属于静态测试3.2、动态测试动态测试:动态测试方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等性能。这种方法由三部分组成:构造测试用例执行程序分析程序的输出结果大多数软件测试工作都属于动态测试4、按是否查看代码4.1、黑盒测试黑盒测试:黑盒测试也称功能测试,测试中把被测的软件当成一个黑盒子,不关心盒子的内部结构是什么,只关心软件的输入数据与输出数据4.2、白盒测试白盒测试:白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒指的打开盒子,去研究里面的源代码和程序结果。接口测试也是白盒测试的是一种4.3、灰盒测试灰盒测试:灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况5、按是否手工执行5.1、手工测试手工测试:手工测试就是由人去一个一个的输入用例,然后观察结果,和机器测试相对应,属于比较原始但是必须的一个步骤。总结优缺点:优点:自动化无法替代探索性测试、发散思维类无既定结果的测试。缺点:执行效率慢,量大易错5.2、自动化测试自动化测试:自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。功能测试自动化、性能测试自动化、安全测试自动化一般我们说的自动化测试为:功能测试自动化自动化实施步骤:完成功能测试,版本基本稳定根据项目特性,选择适合项目的自动化工具,并搭建环境提取手工测试的测试用例转化为自动化测试的用例通过工具、代码实现自动化的构造输入,自动检测输出结果是否符合预期生成自动测试报告持续改进,脚本优化6、按测试对象划分6.1、业务测试业务测试:是测试人员把系统各个模块串接起来运行、模拟真实用户实际的工作流程,满足用户需求定义的功能来进行测试的过程业务测试关注需求与用户6.2、性能测试性能测试:检查系统是否满足需求规格说明书中规定的性能。通常表现在以下几个方面:对资源利用(如内存、处理机周期等)进行的精确度量对执行间隔日志事件(如中断,报错)响应时间吞吐量(TPS)辅助存储区(例如缓冲区、工作区的大小等)处理精度等进行的监测6.3、安全性测试安全性测试:安全测试是一个相对独立的领域,需要更多的专业知识。例如web的安全测试,需要熟悉各种网络协议TCP\HTTP,防火墙,CDN,熟悉各种操作系统的漏洞,熟悉路由器等。从软件来说,熟悉各种攻击手段,例如SQL注入、Xss等6.4、易用性测试易用性测试:易用性(Useability)是交互的适应性、功能性和有效性的集中体现。易用性属于人体工程学的范畴,人体工程学(ergonomics)是一门将日常使用的东西设计为易于使用和实用性强的学科易用性测试也叫作用户体验测试6.5、界面测试界面测试:界面测试(简称UI测试),测试用户界面的功能模块的布局是否合理、整体风格是否一致、各个控件的放置位置是否符合客户使用习惯,此外还要测试界面操作便捷性、导航简单易懂性,页面元素的可用性,界面中文字是否正确,命名是否统一,页面是否美观,文字、图片组合是否完美等6.6、文档测试国家有关计算机软件产品开发文件编制指南中共有14种文件,可分为3大类:开发文件:可行性研究报告、软件需求说明书、数据要求说明书、概要设计说明书、详细设计说明书、数据库设计说明书、模块开发卷宗用户文件:用户手册、操作手册,用户文档的作用:改善易安装性;改善软件的易学性与易用性;改善软件可靠性;降低技术支持成本管理文件:项目开发计划、测试计划、测试分析报告、开发进度月报、项目开发总结报告。在实际的测试中,最常见的是用户文件的测试,例如:手册说明书等。也会有一些公司对需求文档进行测试,来保证需求文档的质量文档测试的关注点:文档的术语文档的正确性文档的完整性文档的一致性文档的易用性6.7、安装测试安装测试:测试程序的安装、卸载典型的是app的安装、卸载6.8、兼容性测试兼容性测试:兼容性主要是指软件之间能否很好的运做,会不会有影响、软件和硬件之间能否发挥很好的效率工作,会不会影响导致系统的崩溃。平台测试浏览器测试软件本身能否向前或者向后兼容测试软件能否与其它相关的软件兼容数据兼容性测试最常见的就是浏览器的兼容性测试,不同浏览器在css,js解析上的不同会导致页面的显示不同。常见的IE8的兼容性。软件测试基础(二)一、什么是软件测试在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。找BUG证明软件可用二、测试目的项目早期:预防缺陷项目中期:发现严重、致命的缺陷,让软件尽快稳定项目后期:证明软件可用三、测试活动测试计划活动:由测试经理编写测试计划,从管理角度规划和控制整个测试工作,包括人员分工、测试范围和时间进度管理测试设计活动(有技术难度):由资深测试工程师编写测试方案文档,从技术角度规划和控制整个测试工作如何测试,计划中称为测试策略测试实现活动:由测试人员编写测试用例文档。测试用例(testcase):用一组数据按照一定步骤来检查软件的处理是否正确测试执行活动:由测试人员根据测试用例文档对被测对象进行操作,搭建测试环境(Linux操作系统上搭建web服务、application服务、DB服务)、执行测试用例、提交缺陷报告(开发人员要通过调试来定位和修复缺陷、测试工程师需要通过回归测试验证缺陷是否修复)、测试记录、测试报告testreporter、编写测试总结四、测试方法回归测试目的:验证缺陷是否修复、检查是否引入新的缺陷策略:选择性回归(发现缺陷的测试用例需要重新执行、与开发人员修改代码相关的功能的测试用例需要重新执行、核心业务流程)、完全回归(执行所有测试用例,绝大部分测试用例,需要借助于自动化测试或者云测试)根据测试依据分为:SRS:软件的外在特性,根据外在特性开展测试叫黑盒测试,对应系统测试或功能测试HLD:每个模块的功能(外在特性),告诉我们每个模块内部有哪些函数(内部结构),根据模块功能以及内部组成来开展测试叫灰盒测试LLD:告诉我们每个函数的功能(外在特性),告诉我们每个函数的内部逻辑(内部结构),根据函数内部结构开展测试叫白盒测试,对应单元测试或代码测试静态动态测试:静态测试:不执行被测对象进行测试,人工静态测试(同行评审),自动化静态测试(代码编译)动态测试:执行被测对象进行测试,例如功能测试、性能测试、安全性测试、可靠性测试、语句覆盖测试……自动化测试:重复性高、技术难度低的工作可交给电脑完成,测试环境的搭建(自动部署),测试用例的执行(selenium自动化测试)提高测试效率,无法提高测试效果确保软件无问题,而不是去发现问题当软件稳定后,再进行自动化测试自动化测试的局限性:脚本维护工作量比较大、UI自动化:识别页面元素,加上对应的操作自动化测试的优点:提高回归测试效率、具有很好的一致性自动化测试何时引入:界面很少发生变化时可引入、需要重复执行10次以上自动化测试分为:狭隘自动化测试、广义自动化测试.软件测试基础(三)一、测试方法总结二、单元测试函数函数就是一系列语句的集合,为了完成某个会重复使用的特定功能。需要该功能的时候,直接调用该函数即可,不用每次都堆叠一大堆的代码。驱动:调用被测函数、将测试用例中测试数据传递给被测函数、将执行结果和测试用例中预期结果进行比较、输出测试执行结果桩用于替代被测函数所调用的其它函数,保证测试仅针对被测函数在单元测试执行活动中需要完成驱动和桩的编写单元测试:针对函数所开展的测试,检查函数代码实现是否,和LLD是否一致单元测试从代码角度比系统测试测的更细,能测试很多系统测试所无法实现出来的情况,比如异常数据,从而能更好的保证代码的质量三、集成测试在单元测试的基础上,将所有函数按照概要设计要求组装成为子系统或系统所进行的测试,集成测试也叫组装测试、联合测试、子系统测试或部件测试注意:集成测试和单元测试所关注的范围是不同的,因此,他们在发现问题的集合上包含有不相交的区域,不能使用集成测试来代替单元测试,反之也是一样与概要设计的分层设计对应:模块内的集成(函数间集成),模块间集成,子系统间集成集成测试的重点内容:集成后的功能功能之间可能会产生相互的影响不同模块可能会同时访问光驱,产生冲突ecshop注册功能,用户名与密码等函数单个没有问题,集成后,再使用,是否有影响手机:通话、短信、闹钟、视频同时使用,有没有问题内部的接口:函数间的相互调用、接口测试集成测试策略:集成测试的优点:测试模块间的关联关系,可以使软件尽快稳定下来,可以尽早发现缺陷向服务端发送一些前端不允许修改或添加的数据,查看服务端是否可以正常处理.软件测试基础(四)一、什么是软件质量需要区分软件质量(本身质量:application(应用)功能完整)和运营质量(送餐快)、服务质量(投诉退款)软件质量是软件的实体特性对需求的满足程度对用户需求的满足:简化登录操作对用户实际需求的满足:支付对需求规格的满足:研发人员、测试人员都要关注这点二、软件质量铁三角三、软件质量模型软件质量分类内部质量:需求规格说明书、设计规格、代码的质量,对应的单元测试和集成测试外部质量:程序、使用说明、用户的帮助手册(使用说明书)质量,对应的是系统测试使用质量:用户对软件的感受,对应的验收测试可维护性对应内部质量(单元、集成),其他5大特性对应外部质量(系统测试)功能性:适合性:SRS中规定的功能需求(正常用户名密码登录、自动登录、找回密码、扫码登录……)准确性:数据处理准确、数据显示准确(界面的显示,默认首次进入登录页面以及非首次登录页面的默认样式;动态变化的页面元素,鼠标悬浮时页面元素的样式,软件在屏幕中的启动位置,界面的自适应,注意:当没有需求时,更多关注各元素样式的一致性),是否和需求规格严格一致,计算精度是否达到要求(ecshop:搜索结果是否正确),功能是否准确(地图软件定位功能)互操作性:不同软件之间互操作(支付宝往银行账户转账)保密安全性:将用户的一些敏感数据进行加密、掩码处理(客户端密码掩码显示、掩码的密码禁用复制粘贴、网络传输过程中密码参数加密处理、数据库中密码数据加密处理、客户端明文显示的数据,数据库一般不做加密处理)依从性:需要满足国际、国家、行业、企业标准(行业内默认支持的最低分辨率:1024*768)效率:时间特性:响应时间,判断系统是否有性能问题的指标(2-5-8原则)(打开网页花多长时间、app切换界面花多长时间、启动时间、正常登录响应时间、首次启动、非首次启动、输入回显、密码登录切换扫码登录)资源利用性:包含本机的资源,也包含服务器的资源,client/server:资源包含内存、cpu、硬盘、网卡、声卡等,browser/server:吞吐量、吞吐率、tps、每秒点击数……依从性:同上易用性:易理解性:界面显示让用户易理解、鼠标悬浮按钮的提示文案、按钮或者是模块的logo需要见其形知其义、输入框的背景文案、确认按钮的样式易操作性:操作步骤数少(word中菜单级数不超过3级、网站内容导航、快捷操作、文本框光标默认选中),通过快捷键完成操作(ctrl+c、ctrl+v、ctrl+a、ctrl+s、esc、tab……),提供多种操作方式实现同一个功能易学性:根据帮助或者提示可以很快学会,帮助文档对于不易理解的模块功能进行解释说明,说明可以确切的帮助到用户吸引性:布局、颜色、文字图片的配比依从性:同上可靠性:成熟性:软件产品为避免由软件内部的故障而导致失效的能力(潜在的故障密
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年项目管理考试掘金试题及答案
- 2024年项目管理考试练习试题及答案
- 项目成效评估方法的探索试题及答案
- 项目进展监控技术的有效性分析试题及答案
- 银行营销及市场开发试题及答案
- 税务风险防范实例解析试题及答案
- 遮板安装专项施工方案
- 2024年项目管理找出项目瓶颈的考点试题及答案
- 2025年注会备考的积极心态培养试题及答案
- 智能财税考试题型及答案
- 鸡球虫课件(共32张课件)《动物疫病防治》
- 八年级下 地理 商务星球版《海洋利用与保护》名师课件
- 第七章 坚持以军事、科技、文化、社会安全为保障-国家安全教育大学生读本教案
- 《民法典》医疗损害责任篇培训课件
- 国企数字化转型解读及赋能zzw
- 血液透析前中后护理
- 康复医学教材
- 《建筑工程设计文件编制深度规定》(2022年版)
- 询价比价报告模板
- 《2024年 《法学引注手册》示例》范文
- 家具抖音号运营推广策划方案课件
评论
0/150
提交评论