好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

软件测试综述.doc

9页
  • 卖家[上传人]:新**
  • 文档编号:394804984
  • 上传时间:2022-07-26
  • 文档格式:DOC
  • 文档大小:87KB
  • / 9 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 软件测试方法综述软件测试方法综述摘要:软件测试是一个涉及开发周期各阶段的活动,不同阶段的测试目标各异软件测试研究面临一系列的挑战本文介绍了已有的方法、技术和模型,并指出软件测试需要深入研究的关键技术最后,总结并提出今后的发展方向关键字:软件测试 测试模型 测试方法 研究方向The Summary of Software Testing MethodsAbstract:Software testing is a matter of the activities which involve in all stages of software development, different goals at different stages of testing. The research of Software testing is facing a series of challenges. It described the existing methods、 techniques and models, and pointed out some key technology that requires in-depth study。

      It is proposed the future direction of development.Keyword:Software testing Test model Test Methods Research direction1. 引言软件测试在软件生存周期中占有重要的地位,是提高软件质量的有效途径之一通过排除软件测试中发现的错误和缺陷,可以有效实现软件的可靠性增长据统计,在欧美的软件项目中,软件测试的工作量要占到总工作量的 40%,软件测试的费用要占到项目总经费的 30%,特殊情况下,对性命攸关可靠性要求很高的软件,其测试费用甚至高达所有其他软件工程阶段费用总和3-5在微软,开发人员和测试人员的比例为1:1.5,在BORLAND公司,测试人员与开发人的比例大概是1:1比尔.盖茨曾经说过,“人们都说我们是世界上最大的软件开发公司,其实我们更是世界上最大的软件测试公司”   软件测试并不单纯等同于程序测试它应该贯穿整个软件定义与开发整个期间因此需求分析、概要设计、详细设计以及程序编码等各阶段所得到的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序.都应该是软件测试(评审)的对象。

      在对需求理解与表达的正确性、设计与表达的正确性、实现的正确性以及运行的正确性的验证中,任何一个环节发生了问题都可能在软件测试中表现出来2. 软件测试基本概念软件测试的定义:使用人工或自动的手段,来运行或测试某个系统的过程其目的在于检验它是否满足规定的需求或弄清与其结果与实际结果之间的差别软件测试为了发现并指出软件系统缺陷即bug软件中的Bug指的是软件中(包括程序和文档)不符合用户需求的问题我们测试一个软件的第一件事情,通常是搭建用来云慈宁宫软件的测试环境,简单的说,软件测试环境就是软件运行的平台,即软件、硬件和网络的集合,如下式所示:测试环境=软件+硬件+网络搭建测试环境有如下几个要点1) 真实,尽量模拟用户的真实使用环境(2) 干净,测试环境测试环境中尽量不要安装其他与北侧软件无关的软件(3) 无毒,测试环境没有中毒(4) 独立,测试环境和开发环境独立测试用例,英文为Test Case,缩写TC,值得是在测试执行之前设计的一套详细的测试方案,包括测试环境、测试步骤、测试数据和预期结果简单用一个等式表示:测试用例=输入+输出+测试环境期中,“输入”包括测试数据和操作步骤;“输出”指的是期望结果;“测试环境”指的是系统环境设置。

      编写测试用例时应注意4W,即why(为什么要编写测试用例),when(什么时候写测试用例),who(有谁来写测试用例),what(根据什么写测试用例)3. 软件测试分类软件测试的目标在于以最少的时间和人力系统地找出软件中潜在的各种错误和缺陷所以如何测试的彻底、怎样设计测试用例是测试的关键所在而软件测试的方法是多种多样的,这些方法各有优缺点,适用于不同的场合下面针对各种测试方法及其优缺点作一下简要地介绍,可以从不同的角度加以分类:(1) 根据软件测试的阶段可以划分为单元测试、集成测试、系统测试、验收测试,其中验收测试又可分为α测试和β测试2) 从是否需要执行被测软件的角度来看,可分为静态测试和动态测试3) 从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为黑盒测试和白盒测试黑盒测试又可以分为功能测试和性能测试期中功能测试包括逻辑功能测试、界面测试、易用性测试、安装测试、兼容想测试;性能测试包括一般性能测试、稳定性测试、负载测试、压力测试4) 其他的测试还有回归测试、冒烟测试、随机测试,灰盒测试、自动化测试等软件测试的方法和技术是多种多样的,从不同的角度出发,软件测试可以划分为不同的分类。

      4. 软件测试的一些基本原则(1) Zero Bug与Good EnoughZero Bug 指的是软件中没有任何Bug,Good Enough指的是只要软件大道一定的质量要求,就可以停止测试了对于相对复杂的产品或系统来说,没有Bug是不可能的,我们只能相仿设法把软件的Bug书控制在可以忍受的范围之内Good Enough原则就是一种权衡投入/产出比的原则:不充分的测试时不负责任的;过分的测试时一种资源的浪费,同样也是一种不负责任的表现2) 不要试图穷举测试(3) 开发人员不能及时运动员又是裁判员,也就是说测试应该由独立的第三方机构来完成4) 软件测试要尽早执行实践证明,在大多数情况下,在需求分析阶段就会产生缺陷,而且需求分析阶段引入的缺陷是最多的,其修复成本确实最低的,所以软件测试应该尽早执行,越早执行,风险越小5) 软件测试应该追溯需求测试环节包括4个部分:正确的功能;有错误编码带来的错误,这种错误可有开发人员直接修改;有错误设计产生的错误,这种错误时不能直接修改的,必须去修改设计;最后一种是有错误说明带来的错误,这种也是潜伏的不容易发现的错误,需要我们追溯需求6) 缺陷的二八定理一般情况下,80%的缺陷集中在20%的模块中。

      我们测试时要抓住主要矛盾,如果发现某一程序模块比其他模块有跟多的缺陷,就要投入主要的人力和精力重点测试这20%的模块,以提高我们的测试效率7) 缺陷具有免疫性程序员在修改完缺陷,把新版本提交给测试人员,测试人员根据相同的测试用例进行回归测试,就像是用同一种农药来杀害虫一样,其效果五一回大打折扣,这就要求测试人员要根据新版本的特点去修改维护测试用例8) 要严格执行测试计划,排除测试的随意性5. 软件测试的模型5.1 测试模型概述正如软件开发有过程模型一样,软件测试也有测试模型软件测试模型是软件测试框架,它描述了软件测试过程所包含的主要活动,以及这些活动之问的相互关系等一种好的软件测试模型.应具有以下特征Ⅲ:(1)它将测试计划、测试用例设计、测试执行、测试结果收集与分析结合在一起2)不同的测试技术.应用于不同的时间点、需求和运行环境对应用程序进行测试3)使软件设计中的错误尽可能早地暴露出来通过测试模型,软件测试人员及有关人员可以了解,测试从什么时候开始,在什么时候结束,测试过程包括哪些活动,需要什么资源等在软件测试策划时,要根据测试目的、所采用的开发过程模型和组织的条件等,选择合适的测试模型。

      5.2测试模型介绍1)模型基本介绍目前,软件测试模型有V-模型、W-模型、前置测试模型、H模型、X模型、蝶型模型等,其中V-模型和W-模型是常用的测试模型,得到了普遍接受本文只介绍V-模型与W-模型在传统的瀑布型软件开发过程中,仅仅把测试过程作为在需求分析、概要设计、详细设计及编码之后的一个阶段,对软件测试过程没有进一步的描述V模型针对瀑布模型对软件测试过程进行了补充v模型最早由已故的Paul Rook在80年代后期提出,V模型被包含在英国国家计算中心文献中发布,旨在改进软件开发的效率和效果V模型在欧洲尤其是英国被接受,并被认为是瀑布模型的替代品,V模型最早提出测试并不是一个事后弥补行为,而是一个同开发过程同样重要的过程,这是它最大的积极意义所在验收测试设计验收测试用户需求 系统与测试设计规格定义系统测试 集成测试设计概要设计集成测试 单元测试设计详细设计单元测试编 码Fig.1 V-模型Fig.1因此,V模型主要向我们传递了如下信息:需求、功能、设计和编码的开发活动随时间而进行,而相应的测试活动,即针对需求、功能、设计和编码的测试,其开展的次序则正好相反换而言之,代码最后被开发,而相应的单元测试首先被执行;需求最早被开发,可相应的验收测试到最后才进行。

      V模型揭示了软件测试活动分层和分阶段的本质特性V-模型的哟点就是详细表示了测试的各个阶段以及参考依据:单元测试参考的是详细设计集成测试参考的是概要设计系统测试参考的是需求规格说明书验收测试参考的是用户需求V-模型的缺点是没有说明在项目的前期测试需要做哪些工作(编写测试技术啊、测试用例等),而且和瀑布模型一样,流程也是单向的,不可逆的V-模型容易让人形成测试是开发之后的一个阶段,测试的对象就是程序”之类的误解2)W-模型软件开发过程各阶段都可能产生错误据国外对一些大型软件系统的统计,需求分析与设计阶段产生的错误占64%,编码错误占36%软件错误具有传递性,即需求分析产生的错误如果没有发现,会依次传递到设计和编码软件错误的发现和解决具有放大性据估计,在分析设计阶段产生的错误,如果在编码结束后的测试过程才被发现,其代价约为在分析设计阶段发现和解决错误的代价的10倍如果该错误在产品交付使用后才发现和解决,则其代价将超过100倍因此,测试工作越早进行,发现和解决错误的代价越小,风险越小根据这个观点,,Systeme Evolutif公司在V-模型的基础上,提出了W-模型,如图Fig.2所示验收测试需求测试安装需求规格测试规格系统测试构件系统集成测试设计测试构建软件设计编码单元测试Fig.2 W-模型按照W-模型,软件开发过程中各个阶段的可交付产品(中间的或者最终的产品)都要进行测试,尽可能使各阶段产生的错误在该阶段得到发现和解决。

      W-模型在V-模型的基础上增加需求测试、规格测试和设计测试,目的是确保需求的完整性、一致性、准确性、可实现性和可测试性等,以及设计对需求的可追踪性、正确性、规范性和可测试性等测试与开发是同步进行的,软件需求规格说明、软件概要设计说明以及软件详细设计说明等是被测试的对象3)Spillner W-模型Andreas Spillner在Evolutif基本模型的基础上,增加了测试--查错--更改--再测试循环,并将启动测试活动、测试计划和准备活动在模型上明确表示出来,如图Fig.3所示验收测试计划和准备启动测试活动需求评审动需求查错与更改验收测试系统测试计划和准备规格评审规格查错与更改系统测试集成测试计划和准备集成测试概要设计设计概要设计评审查错与更改。

      点击阅读更多内容
      相关文档
      高等学校学生手册.doc 2025年区教育系统招聘编外教师储备人才事业单位考试押题.docx 2025年秋季青岛版三年级数学上册认识轴对称现象教学课件.pptx 2025年秋季青岛版三年级数学上册用乘法估算解决问题教学课件.pptx 2025年秋季青岛版三年级数学上册两、三位数乘一位数的笔算(不进位)教学课件.pptx 2025年秋季青岛版三年级数学上册1200张纸有多厚教学设计范文.docx 2025年秋季青岛版三年级数学上册多位数除以一位数教学课件.pptx 2025年秋季青岛版三年级数学上册认识平移、旋转现象教学课件.pptx 2025年秋季青岛版三年级数学上册多位数乘一位数教学设计范本.docx 2025年秋季青岛版三年级数学上册认识平移与旋转教学设计范文.docx 2025年秋季青岛版三年级数学上册乘数中间有0或末尾有0的乘法教学课件.pptx 2025年秋季青岛版三年级数学上册两位数乘一位数的笔算(进位)教学课件.pptx 2025年秋季青岛版三年级数学上册《两、三位数乘一位数的笔算(不进位)》教学设计与意图.docx 2025年秋季青岛版三年级数学上册我学会了吗教学课件.pptx 2025年连云港市妇幼保健院招聘专业技术人员考试笔试试题.docx 2025年深圳市大鹏新区发展和财政局招聘考试笔试试卷.docx 2025年绵阳市梓潼县财政投资评审中心招聘考试试题.docx 2025年来宾市妇幼保健院招聘考试笔试试题.docx 2025年无极县教育系统招聘教师考试笔试试卷.docx 2025年灵山县第三中学调配教师考试笔试试题.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.