以软件开发生命周期来说明各种测试的使用情况
发布日期:2021-08-21 13:18:16 浏览次数:28 分类:技术文章

本文共 1911 字,大约阅读时间需要 6 分钟。

  说到软件生命周期,我们首先来温习一下。一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,一般称为 (软件生命周期)通常,软件生存周期包括:1、问题定义;
2、可行性研究;
3、需求分析;
4、总体合计;5、详细设计;6、编码和单元测试;7、综合测试。

  接下来,在了解一下软件测试。从软件测试的阶段分类,测试可分为4个主要阶段:单元测试、集成测试、系统测试、验收测试。这是一种由小到大,循序渐进的测试过程。

  从基于功能的角度:

  1、 单元测试
  这个步骤主要是开发者针对开发过程中,程序内部的函数、类、变量等等数据进行正确性的测试。
  例如:一个函数需要把一些重要的数据插入到 数据库中。那在编写完这个函数之后,就要进行测试,以验证:1)函数能正确带出需要插入数据库的数据变量。2)带出的数据可以正确的插入需要插入的数据库。
  2、 功能测试
  顾名思义就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。
  在一个项目中,有许多功能组成,每一个功能中有许多方法组成,我们经过单元测试不能确定其正确性,所以需要更加详尽的功能测试过程。
  3、集成测试
  集成测试是在单元测试的基础上,将所有模块按照详细设计的要求组装成子系统或系统,进行集成测试。集成测试侧重于模块间的接口正确性以及集成后的整体功能的正确性。
  等一个个函数或者功能模块的单元测试完成之后,就需要测试这些函数或者模块之间的整体的数据流是否正确。
  4、场景测试
  通过运用场景来对系统的功能点或业务流程的描述,从而提高测试效果的一种方法。
    为什么场景法能如此清晰的描述整个事件?因为,现在的系统基本上都是由事件来触发控制流程的。如:我们申请一个项目,需先提交审批单据,再由部门 经理审批,审核通过后由总经理来最终审批,如果部门经理审核不通过,就直接退回。每个事件触发时的情景便形成了场景。而同一事件不同的触发顺序和处理结果 形成事件流。这一系列的过程我们利用场景法可以清晰的描述清楚。
  5、 系统测试
  系统测试是将经过集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。系统测试的目的是验证最终软件系统是否满足用户规定的需求。
 
  基于非功能的角度:
  1、 压力测试
  压力测试是对系统不断施加压力的测试,通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最多服务级别的测试。
  我们平时浏览网页过程中, web站点在大量的负荷下,何时系统的响应会退化或失败。
  2、回归测试
  回归测试是指在发生修改之后重新测试先前的测试以保证修改的正确性。理论上,软件产生新版本,都需要进行回归测试,验证以前发现和修复的错误是否在新软件版本上再次出现。
  回归测试的目的在于验证以前出现过但已经修复好的缺陷不再重新出现。一般指对某个已知已经修正的缺陷再次围绕它原来出现时的步骤重新测试。
  3、 安全测试
  对产品进行检验以验证产品符合安全需求定义和产品质量标准的过程。
    1)提升IT产品的安全质量; 2).尽量在发布前找到安全问题予以修补降低成本 ;3)度量安全。4)验证安装在系统内的保护机制能否在实际应用中对系统进行保护,使之不被               非法入侵,不受各种因素的干扰。
  4、可达性测试
  就是给那些可达性出现不同程度问题的人们使用软件的可能性的测试。简单说,就是测试软件是否能够被盲人、无鼠标人士、老花眼、色盲等残疾或者部分有障碍人士正常使用,这其中也包含了正常人在某些时候发生暂时性障碍的情况下正常使用,如怀抱婴儿等。
  测软件给残障人士的可使用性,是否可被特定read软件读出所有页面和组件,是否支持全键盘操作等等
  5、兼容性测试
  兼容性测试将验证软件与其所依赖的环境的依赖程度,包括对硬件平台的依赖程度和对软件平台依赖程度,即是通常说的软件的可移植性。
  兼容性测试主要目的是为了兼容第三方软件,确保第三方软件能正常运行,用户不受影响。由于各类应用软件和系统软件已经到了多如牛毛的地步,而且可 以预见还将继续以爆炸式的速度增长,软件之间的数据共享和系统资源分享变成为一个问题,这也是兼容性测试的意义所在。虽然兼容性测试无法做到完全的质量保 证,但对于一个项目来讲,兼容性测试是必不可少的一个步骤。

转载于:https://www.cnblogs.com/cccdx/p/5088330.html

转载地址:https://blog.csdn.net/weixin_33720078/article/details/93746710 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:键盘数字对应的ASCII码(keycode码)
下一篇:四则运算3

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年03月13日 12时38分31秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

java学习手册下载_Java学习手册 2019-04-21
axios delete有请求体吗_关于axios请求——delete方法 2019-04-21
java 自助更改密码 api_搭建ldap自助修改密码系统--Self Service Password 2019-04-21
php继承exten,stylus中文文档 » 继承(@extend) » 张鑫旭-鑫空间-鑫生活 2019-04-21
mysql函数大全 pdf,MySQL函数大全 2019-04-21
php 常用文件系统函数,php 文件系统函数整理介绍 2019-04-21
android pm.java,java – AM / PM的Android DateFormat因设备而异 2019-04-21
oracle存储过程调用sql文件,oracle - 在SQL Developer中运行存储过程? 2019-04-21
oracle同时报604和12507,V$SES_OPTIMIZER_ENV 查不到刚修改的隐含参数, 2019-04-21
zblog的php更换域名,zblogphp更换域名后,原zblog里使用了固定域名,登录不进去怎么办... 2019-04-21
oracle dnfs 配置,Source of Oracle参数解析(dnfs_batch_size) - django-\/\/ i K | 2019-04-21
oracle所需的环境,转:面对一个全新的oracle环境,首先应该了解什么? 2019-04-21
linux 小数四则运行,shell四则运算(整数及浮点数)的方法介绍 2019-04-21
linux系统分区后进入紧急模式,Linux系统的救援模式应用详解 2019-04-21
linux配置匿名ftp服务器,在Linux环境中使用vsftpd搭建ftp实现匿名上传详细配置 2019-04-21
linux创建硬盘分区lvm,LVM创建及分区调整、更换LVM硬盘 2019-04-21
FreeBSD可以安装Linux软件吗,在Linux服务器上面通过网络安装FreeBSD 2019-04-21
.net core linux 桌面应用,C# dotnet core + AvaloniaUI 开发桌面软件,hello world 2021-06-24
linux tcp 113错误,linux系统报tcp_mark_head_lost错误的处理方法 2021-06-24
南昌工程学院c语言答案,南昌工程学院C语言程序设计基础课件第3讲运算符和表达式... 2021-06-24