IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 软件测试开发基础 -> 正文阅读

[开发测试]软件测试开发基础

软件开发生命周期

在这里插入图片描述

  1. 问题定义,该阶段由软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。
  2. 需求分析,该阶段对软件需求进行更深入的分析,划分出软件需要实现的功能模块,并制作成文档。需求分析在软件的整个生命周期中起着非常重要的作用,它直接关系到后期软件开发的成功率。在后期开发中,需求可能会发生变化,因此,在进行需求分析时,应考虑到需求的变化,以保证整个项目的顺利进行。
  3. 软件设计,该阶段在需求分析结果的基础上,对整个软件系统进行设计,如系统框架设计、数据库设计等。
  4. 软件开发,该阶段在软件设计的基础上,选择一种编程语言进行开发。在开发过程中,必须要制订统一的、符合标准的程序编写规范,以保证程序的可读性、易维护性以及可移植性。
  5. 软件测试,该阶段是软件开发完成后对软件进行测试,以查找软件设计与软件开发过程中存在的问题并加以修正。软件测试过程包括单元测试、集成测试、系统测试3个阶段;测试的方法以黑盒测试、白盒测试或者两者结合的形式进行。在测试过程中,为减少测试的随意性,需要制订详细的测试计划并严格遵守;测试完成之后,要对测试结果进行分析并对测试结果以文档的形式汇总。
  6. 软件维护与运行,软件完成测试运行之后并投入使用,会面对庞大的用户群体,软件可能无法满足用户使用需求,此时就需要对软件进行维护升级以延续软件的使用寿命。软件的维护包括纠错性维护和改进性维护两个方面。软件维护是软件生命周期中持续时间最长的阶段。

软件开发模型

大爆炸模式

将大把时间放在开发软件上,计划、进度安排、正规开发过程几乎没有。

优点:简单。多数情况下,大爆炸模式几乎没有什么测试。假如要测试人员的参与,软件测试的工作就是向客户报告发现的问题。

边改边写模型

走一步,看一步,再走一步,…

在这里插入图片描述

优点:适用于一些较小的程序开发,可以快速实现功能
缺点: 无计划的发展,随着软件结构的无规律修改,产品会越来越糟,最终导致无法继续修改。开发过程无考虑测试和可维护性,也没有任何文档,软件的维护十分困难。

瀑布模型

将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开

优点:简捷、精致、很有意义、在合适的项目中效果显著
即 检查点清晰、分工明确有利于开发人员组织管理及工具的使用与研究,提高开发效率
缺点:严格按照线性执行、增加了开发风险。而且必须有产出结果,增加了开发的工作量。
目前来说 瀑布模型不适合现在软件开发

瀑布模型的三点需要强调:

  • 非常强调产品的定义
  • 各步骤是分立的,没有交叉
  • 无法回溯

螺旋模型

是一种演化软件开发过程模型,它兼顾了快速原型的迭代的特征以及瀑布模型的系统化与严格监控。

每次循环包括:
在这里插入图片描述

在这里插入图片描述

优点:强调了风险的分析,对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标
缺点:采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失
过多的迭代次数会增加开发成本,延迟提交时间

敏捷模型

是一种应对快速变化的需求的一种软件开发能力。

优点:及时响应客户需求,不断适应新的趋势
缺点:管理起来相对混乱,不适合大型项目的使用

迭代模型

迭代增量式开发或迭代进化式开发,是一种与传统的瀑布式开发相反的软件开发过程,它弥补了传统开发方式中的一些弱点,具有更高的成功率和生产率。

优点:降低了在一个增量上的开支风险,降低了产品无法按照既定进度进入市场的风险。
加快了整个开发工作的进度。由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。
缺点:增加了集成失败风险,容易变成“边改边写”模型。

快速原型模型

需要迅速建造一个可以运行的软件原型 ,以便理解和澄清问题,使开发人员与用户达成共识,最终在确定的客户需求基础上开发客户满意的软件产品。

优点:减少由于软件需求不明确带来的开发风险。
缺点:原型设计较难,不利于开发人员对产品的扩展
所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上 连续的修改可能会导致产品质量低下。

请添加图片描述
请添加图片描述

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-09-08 11:02:20  更:2021-09-08 11:03:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/21 5:43:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码