软件测试模型与软件测试流程5个阶段

https://www.cnblogs.com/linxiu-0925/p/7761392.html

软件测试流程:需求分析阶段-软件设计和编码阶段(进行单元测试)-集成、系统、验收测试阶段。

软件测试模型:

    传统:项目计划——需求分析——软件设计——程序开发——软件测试——集成维护 
V模型:需求分析-概要设计-详细设计-软件编码-单元测试-集成测试-系统测试-验收测试
W模型:用户需求-需求分析-概要设计-详细设计-编码-单元测试-集成测试-验收测试-单元测试设计-集成测试设计-系统测试设计-验收测试设计-集成-实施-交付
X模型:程序片段1-测试设计-工具配置-执行测试-编码完成-执行测试-工具配置-测试设计-程序片段N;封版-执行测试-测试设计-工具配置-迭代1...N-探索式测试-执行测试
H模型:测试准备-测试就绪点-测试执行-测试流程-其他流程
软件V模型图:


软件测试W模型图:

软件H模型图:


软件X模型图:

总结:在W模型基础上结合H模型思想进行测试,当变更发生时,采用X模型思想进行处理,将开发和测试紧密结合,寻找恰当的就绪点开始测试,并反复迭代。



 
 

软件测试按照研发阶段一般分为5个部分:单元测试、集成测试、确认测试、系统测试、验收测试,下面将不同阶段需要的一些工作内容做一下梳理希望可以帮助到大家。

//No.1//

单元测试(也称为模块测试)

 

单元测试又称为模块测试,是针对软件设计的最小单位程序模块进行正确性检查的测试工作,单元测试需要从程序内部结构出发设计测试用例,多个模块可以平行地独立进行单元测试。

 

一、单元测试的内容:(白盒为主,黑盒为辅)

1、模块接口测试

  • 应对通过所测模块的数据流进行测试

  • 调用所测模块时的输入参数与模块的形式参数的个数、属性和顺序是否匹配

  • 所测模块调用子模块时,输入子模块的参数与子模块的形式参数在个数、属性和顺序上是否匹配。

  • 输出给标准函数的参数的个数、属性和顺序是否正确。

  • 全局变量的定义在各个模块中是否一致。

  • 当模块通过外部设备进行输入/输出操作,文件属性是否正确、open和close语句是否正确,规定的I/O格式说明与I/O语句是否匹配;缓冲区容量是否与记录长度匹配,在读写之前是否打开了文件,读写之后是否关闭了文件,对I/O错误是否做了处理。

 

2、 局部数据结构测试

  • 局部数据结构是最常见的错误来源

  • 不一致的数据类型

  • 不正确或不一致的数据说明

  • 使用尚未赋值或尚未初始化的变量

  • 错误的初始值或错误的缺省值

 

3、 路径测试

运算的优先次序、常见的比较和控制流

 

4、错误处理测试

遇见出错的条件,并设置适当的出错处理

  

5、边界测试

例如循环的次数,最大或最小值

 

6、增量测试【包括自顶向下测试:从程序顶部或初始化模块开始 与自底向上测试:程序中的终端模块开始】与非增量测试

 

 

二、单元测试步骤:

  • 利用设计文档设计测试用例;

  • 创建被测模块的桩模块或驱动模块;

  • 利用被测试模块、驱动模块和桩模块来建立测试环境,进行测试

  • 驱动模块:相当于所测模块的主程序,它接收测试数据,把这些数据传送给所测模块,最后再输出实际结果

  • 桩模块:用以代替所测模块调用的子模块。

 

 

 //No.2//

集成测试(白盒和黑盒结合)

 

又称为组装测试或联合测试,在单元测试的基础上,需要将所有模块按照概要设计说明书和详细设计说明书的要求进行组装。

 

  • 在把各个模块连接起来的时候,穿越各个模块的接口的数据时候会丢失

  • 一个模块的功能是否会对另一个模块的功能产生不利的影响

  • 各个子功能组装完成后,能否达到预期的父功能

  • 全局数据结构是否有问题

  • 单个模块产生的误差累计起来是否会放大

 

集成测试层次:子系统内集成测试;子系统间集成测试;模块间集成测试。

模块组装成系统的方式:一次性组装方式和增殖式组装方式

 

一、一次性组装方式(非增式集成)

 

先对模块分别进行测试,再把所有模块组装进行测试

  缺点:发现错我不容易定位 

 

二、增值式组装测试:自顶向下;自底向上;分层集成;三明治集成;基层集成;高频集成。

 

先对一个个模块进行模块测试,然后将这些模块逐步组装成系统,分为两种方式:自顶向下的增殖方式和自底向上的增殖方式

 

1、自顶向下的增殖方式(不需要驱动模块)

 

将模块铵系统程序结构,严控制层次自顶向下进行组装。

首先以主模块作为被测模块兼驱动模块,所有直属主模块的下属模块全部用桩模块代替,对主模块进行测试。再采用深度优先或广度优先的策略,用实际模块代替桩模块,再用桩模块代替它们的直接下属模块,与已经测试的模块构成新的子系统。然后进行回归测试。

 

2、自底向上的增殖方式(不需要驱动模块)

 

由驱动模块控制最底层模块的并行测试。

 

3、混合增殖式

 

  • 自顶向下增殖方式:

优点:能够较早的发现主要控制方面的问题

缺点:需要建立桩模块,增加了一些附加的测试,涉及算法和输入输出的模块一般在底层,这些底层模块要到组装和测试的后期才能发现。一旦发现问题就会出现过多的回归测试。

 

  • 自底向上增殖方式:

优点:不需要建立桩模块,建立驱动模块要比建立桩模块要简单得多,同时涉及到算法已近输入输出的模块要先测试,把最容易出现问题的部分在早期解决。

缺点:程序一直未能作为一个实体存在,直到最后一个模块加上才能形成一个实体,控制方面最后才能接触。

 

三、集成测试完成的标志:

 

1、成功执行了测试计划中规定的所有集成测试

2、修改了所发现的错误

3、测试结果通过专门小组的评审

4、集成测试需要提交的测试报告:

5、集成测试计划、集成测试规格说明书以及集成测试分析报告

 

 //No.3//

确认测试(黑盒)

 

 确认测试的目标是验证软件的功能和性能以及其他特性是否与用户的要求一致。确认测试一般包括有效性测试和软件配置复查。一般有第三方测试机构进行。

 

 一、进行有效性测试

 

现软件确认要通过一系列黑盒测试。确认测试同样需要制订测试计划和过程,测试计划应规定测试的种类和测试进度,测试过程则定义一些特殊的测试用例,旨在说明软件与需求是否一致。

 

无是计划还是过程,都应该着重考虑软件是否满足合同规定的所有功能和性能,文档资料是否完整、准确人机界面和其他方面(例如,可移植性、兼容性、错误恢复能力和可维护性等)是否令用户满意。

 

确认测试的结果有两种可能,一种是功能和性能指标满足软件需求说明的要求,用户可以接受;

 

另一种是软件不满足软件需求说明的要求,用户无法接受。项目进行到这个阶段才发现严重错误和偏差一般很难在预定的工期内改正,因此必须与用户协商,寻求一个妥善解决问题的方法

 

二、软件配置复查

 

保证软件配置的所有成分齐全,质量都符合要求。应该遵守用户手册和操作手册中的规定步骤。

 

//No.4//

系统测试  通常意义上的系统测试包括 压力测试(也称为强度测试),容量测试,负载测试,性能测试,安全测试,容错测试等。

 

 软件作为计算机系统的一部分,与硬件、网络、外设、支撑软件、数据以及人员结合在一起,在实际或模拟环境下,对计算机系统进行测试,

目的在于与系统需求比较,发现问题。      

 

利用程序的用户文档或书面材料。通过分析目标文档来设 计系统测试,分析用户文档来阐明测试用例。

由于没有一个方法,系统测试需要大 量的创造性。事实上,设计好的系统测试用例比设计系统或程序需要更多的创造性、 智慧和经验。

 为了避免有所遗漏,设计测试用例时应考虑全部的 15 种类型。

能力测试、容量测试、强度测试、易用性测试、安全性测试、

性能测试、存储测试、配置测试、兼容性/配置/转换测试、安装测试、

可靠性测试、可恢复性测试、适用性测试、文档测试、过程测试。

 

 

//No.5//

验收测试  包括:正式验收,alpha测试,Beta测试。

 

 以用户为主的测试,软件开发人员和质量保证人员参加,由用户设计测试用例。

不是对系统进行全覆盖测试,而是对核心业务流程进行测试。

根据合同、《需求规格说明书》或《验收测试计划》对产品进行验收测试。

对于通过验收测试的软件产品/参照《配置管理规范》中所规定的标识方法更改测试状态,同时项目经理负责编制《验收报告》。

 

转载于:https://www.cnblogs.com/bzdmz/p/10637400.html

weixin_30764771
关注 关注
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
软件测试模型软件测试流程5个阶段(重)
Watchmen0320的博客
10-31 7156
软件测试流程需求分析阶段-软件设计和编码阶段(进行单元测试)-集成、系统、验收测试阶段软件测试模型: 传统:项目计划——需求分析——软件设计——程序开发——软件测试——集成维护 V模型需求分析-概要设计-详细设计-软件编码-单元测试-集成测试-系统测试-验收测试 W模型:用户需求-需求分析-概要设计-详细设计-编码-单元测试-集成测试-验收测试-单元测试...
软件测试发展的五个阶段
Maggie97的博客
08-24 923
软件测试是伴随着软件开发的发展而发展的。从软件测试出现到现在,软件测试一共经历了五个阶段: 以调试为主的软件测试 在20世纪50年代,随着计算机的诞生,利用计算机完成复杂、快速计算的计算机编程也随之出现。这时的需求和程序本身也远远没有现在这么复杂多变,但是已经有人在完成编程之后开始考虑“怎么证明程序满足了需求?”的问题。这时的测试还没有明确的概念,主要是以调试为主,验证程序是否满足了需求。 2.以证明为主的软件测试 很快在1957年,Charles Baker在《软件测试发展》一书...
软件测试流程五个阶段
weixin_42693865的博客
10-04 6290
转载:https://blog.csdn.net/zhusongziye/article/details/79078850
软件测试的五大过程
u010512158的专栏
10-05 1804
软件测试的五大过程 分析 计划 设计 实现 执行 什么是测试需求 测试需求主要是解决“测什么”的问题,即指明被测对象什么需要测试测试需求通常是以软件开发需求为基础进行分析,通过对开发需求的细化和分解,形成可测试的内容(主要参考质量模型测试需求应全部覆盖已定义的业务流程,以及功能和非功能方面的需求 测试需求的特征 测试需求必须是可核实的,即,他们必须有一个可观察,可评测的结果,无法核实的需求不是测试需求 测试需求应用指明满足系统需求的正常条件的操作结果或对系统的影响,同时也要
软件测试过程五个步骤_选择新软件技术的5个步骤
weixin_26752759的博客
09-13 1067
软件测试过程五个步骤 选择新软件技术的5个步骤 (5 Steps to Choose a New Software Technology)A green field project unfolds in front of you. Fresh software technologies, ripe for the picking, await discovery. You’re excited,...
软件测试流程,V模型、W模型优缺点.pdf
11-21
软件测试流程、V 模型、W 模型优缺点 软件测试流程是指在规定条件下对产品或程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程软件测试可以分为硬件测试软件测试和嵌入式...
软件测试模型介绍ppt课件.pptx
11-15
H模型测试活动从开发流程完全独立出来,使测试流程形成一个完全独立的流程,将测试准备活动与测试执行活动清晰地体现出来。软件测试是一个独立的流程,贯穿于产品的整个生命周期,与其他流程并发的进行。软件测试...
软件测试工作流程图解析
03-23
1、目前流行的软件测试流程方法有很多种,如瀑布模型、螺旋模型、RUP模型、IPD流程等,不同的过程模型适合于不同类型的项目。  1、目前流行的软件测试流程方法有很多种,如瀑布模型、螺旋模型、RUP模型、IPD流程等...
软件测试V模型.doc
最新发布
03-08
V模型软件测试的经典模型,它的特点是形成一个倒V形状,强调测试与开发的对应关系。在V模型,从左到右依次是需求分析、设计、编码、单元测试、集成测试、系统测试和验收测试。每个开发阶段都有对应的测试阶段,...
软件测试流程测试方法分享.pptx
08-10
软件测试流程通常与软件生命周期模型相结合,如瀑布模型、螺旋模型和V模型。这些模型都强调了测试在软件开发过程的各个阶段的重要性。 - 瀑布模型测试在每个阶段结束后进行,如需求分析、设计、编码和维护阶段...
软件测试的五个阶段软件测试入门很有用哦
10-14
软件测试的五个阶段。。。。 doc文件 1.测试计划   首先,根据用户需求报告关于功能要求和性能指标的规格说明书,定义相应的测试需求报告,即制订黑盒测试的最高标准,以后所有的测试工作都将围绕着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同时,还要适当选择测试内容,合理安排测试人员、测试时间及测试资源等。   2.测试设计   将测试计划阶段制订的测试需求分解、细化为若干个可执行的测试过程,并为每个测试过程选择适当的测试用例(测试用例选择的好坏将直接影响到测试结果的有效性)。   3.测试开发
软件测试流程
02-26
软件测试流程规范(参考大华为的规范),让您的测试更高效!
软件测试基础理论
weixin_43671239的博客
11-12 2462
转载 #1.软件测试的定义: 使用人工或自动手段,来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。 百度百科定义:软件测试(英语:Software Testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出间的审核或者比较过程软件测试的经典定义是:在规定的条件下对程序进行操作,以发...
黑盒测试方法揭密
有家客栈 君子不器
09-15 499
<br />(源自:http://www.tttest.com/ViewArticle.asp~id=198.html)黑盒测试方法揭密 作者:陈樵2002年04月08日本文选自:国计算机报 一、黑盒测试在快速应用开发(rad)环境的重要作用 软件测试方法一般分为两种:白盒测试与黑盒测试。其,白盒测试又称为结构测试、逻辑驱动测试或基于程序本身的测试,着重于程序的内部结构及算法,通常不关心功能与性能指标。黑盒测试又被称为功能测试、数据驱动测试或基于规格说明的测试,实际上是站在最终用户的立场上,检验输入输
软件测试的整体流程和各阶段工作任务
Dralong_F的博客
10-02 4176
为了规范软件测试的内容、方法和过程,在对软件进行测试之前,必须创建测试计划。一份良好的测试计划,其主要内容包括以下几个方面:1. 缺陷分析1)缺陷密度 缺陷密度是指缺陷在软件规模(组件、模块等)上的分布,如每千行代码或每个功能点的缺陷数。一般来说,发现更多缺陷的模块,隐藏的缺陷也更多,在修正缺陷时也会引入较多的错误,结果产品的质量更差。所以说,缺陷密度越低意味着产品质量越高。2)缺陷清除率首先引入几个变量,F为描述软件规模用的功能点;D1为在软件开发过程发现的所有缺陷数;
软件测试分类(按开发阶段划分)
乐在其中/Leo在其中
10-20 803
⑴单元测试:  单元测试又称为模块测试,是针对软件设计的最小单位程序模块进行正确性检查的测试工作,单元测试需要从程序内部结构出发设计测试用例,多个模块可以平行地独立进行单元测试。 单元测试的内容: ①    模块接口测试 应对通过所测模块的数据流进行测试 调用所测模块时的输入参数与模块的形式参数的个数、属性和顺序是否匹配 所测模块调用子模块时,输入子模块的参数与子模块的形式参数在个...
软件测试面试题:按开发阶段测试分为哪几个阶段?按软件测试分为哪几个阶段
一亿并发的博客
04-10 1522
按开发阶段测试分为哪几个阶段?按软件测试分为哪几个阶段? 答:按照开发阶段划分,和开发过程相对应,测试过程会依次经历单元测试、集成测试、系统测试三个主要阶段。 按软件测试阶段可分为:Alpha测试、Bata测试、验收测试和冒烟测试。 个人简介 我是一名测试兼开发工程师,目前25K,目前做的是无人驾驶,欢迎和大家一起交流测试技术,一起高薪就业,我们还有一起打妖怪的群哦,还有面试题小程序哦 ...
测试环境搭建流程_软件测试的完整流程/过程(原创)
weixin_39757743的博客
11-10 4233
其实测试流程这个描述不够准确,在国际软件测试委员会的大纲《ISTQB认证测试工程师_FL大纲-2018版_V3_1》,把这个测试过程步骤叫做 测试过程(test process )它又牵扯到 测试活动 和 测试策略 的概念©国际软件测试认证委员会 2018 版尽管没有统一的软件测试过程,但是有一些常见的测试活动,如果没有这些测试活动就不太可能实现既定的目标。这些测试活动就组成了一个测试过程...
软件测试方法总结
wangjie36的博客
04-24 8192
集成测试是模块测试的多级扩展,是在模块测试的基础上进行的一种有序测试。旨在检验软件模块之间的接口关系,以期望通过测试发现各软件模块接口之间存在的问题,最终把经过测试的模块组成符合设计要求的软件。集成测试阶段主要用于系统具有技术类似性模块形成分子系统的集成过程和集成后测试。单元的集成过程往往具有一定的顺序特性,每增加一个模块,系统的功能可能是叠加式的,也可能是完全革新的。因此,集成测试需要作为分子系统设计的一部分。集成测试的质量控制要点,在于每个模块集成后,错误推测法判定表法等价类划分法边界值分析法正交实

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 网络优化之net.ipv4.tcp_tw_recycle和tcp_tw_reuse参数 8797
  • 返回到前端的JSONObject里面多了斜杠 8682
  • vue 获取后端数据打印结果undefined问题 8278
  • 常见移动端兼容性问题 8112
  • linux考试题 7780

大家在看

  • PFTL.201C-20kN张力计压头故障处理
  • leetcode225用队列实现栈
  • B树(数据结构篇)
  • 每日一题——Python实现PAT甲级1132 Cut Integer(举一反三+思想解读+逐步优化)五千字好文 1686
  • 如何证明数学中是根号2无理数,并且通过编程求解根号2的值 778

最新文章

  • Wise Force Deleter 强制删除文件工具
  • Win 10 你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问.......
  • Win10 高频率使用的快捷组合键
2019年650篇
2018年781篇
2017年711篇
2016年547篇
2015年396篇
2014年285篇
2013年269篇
2012年208篇
2011年150篇
2010年126篇
2009年99篇
2008年90篇
2007年41篇
2006年34篇
2005年21篇
2004年15篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳SEO优化公司布吉seo丹竹头百姓网标王推广大芬设计网站同乐企业网站制作松岗网站排名优化吉祥seo沙井网站搭建木棉湾外贸网站设计坂田企业网站制作松岗网站排名优化东莞网站建设南山英文网站建设沙井模板网站建设双龙标王大浪模板网站建设松岗外贸网站设计木棉湾网站优化推广坑梓网站优化按天计费南山百搜标王南澳阿里店铺托管塘坑关键词按天收费沙井关键词排名东莞至尊标王西乡设计网站爱联百度标王石岩seo排名大芬网站搭建大运高端网站设计沙井关键词按天收费民治seo优化歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化