软件测试基础(三) 之 软件的生命周期

news2024/11/17 8:47:46

软件的生命周期

一、软件的生命周期简述

  软件的生命周期中最早可能是客户,可能是产品的一个想法阶段,然后再到后来的一个需求阶段,再到开发人员去进行编码,去进行自己的自测,再提到软件测试人员进行综合测试,经过综合测试之后,产品就上线了,上线之后就要涉及到软件的后续维护。不管是升级也好,优化也好,添加新功能也好,改bug也好,都是软件维护的一部分,这就是软件的一生。

  按照整个软件开发的规模和复杂程度,从时间上来说把整个开发过程分段,各个阶段进行分解,形成相对独立的一些阶段,每个阶段可能有自己的名称,但是说各阶段独立,互相之间又有一些联系。所以只能说是各阶段相对独立,每一个阶段都是固定必须存在。在每个阶段又分解成几个具体的任务,每个阶段都需要有开发成果,这个成果不仅仅是代码,需要有文档的维系,而文档他其实也是测试的一个范畴,因为它也是软件一部分。

二、软件的生命周期组成

  软件的一生分成了几个步骤,包括问题定义、可行性研究、需求分析、概要设计、详细设计、编码和单元测试、综合测试、软件维护。这是一个通用的软件生命周期,可能在实际软件的开发过程中会有相对的调整。

    • 2.1.问题定义

  问题定义就是不管是产品,还是客户,脑门一热想到一个idea,比如说我今天想了一个想法,我希望能能够做一个硬件加软件的综合体,这就是我脑洞大开,确定好我到底要解决的一个什么样的问题。

    • 2.2.可行性研究

  就是从目前的技术来看,我刚刚的这种脑洞大开的想法,到底有没有可以解决的方案,是否能够通过技术手段来实现。所以假设这个是可以实现,经过可行性研究,大家论证,通过了你这个想法,没问题的话就开始进行需求分析。

    • 2.3.需求分析

  就是深入具体地了解客户的需求,上面只是一个想法,这个想法要落实到一个个需求上,落实到最终的一个文档上。那接下来我就要去做一些概要设计。

    • 2.4.概要设计

  其实就是实现这个需求到底有哪几种方案,把他设计出来。

    • 2.5.详细设计

  到了详细设计,就是首先要从概要设计里选出一条最合适实现的一个方案,然后根据这个方案涉及到各个模块,这里边可能需要包含的一些算法,算法里面可能还要包含到你的数据结构的东西,这也是在详细设计之中。比如说要用一个什么样的数据库,这个数据库是以什么样的形式而存在,数据结构是什么样子的,都要设计好。设计好了就可以开始下一步。

    • 2.6.编码

  到这步就可以开始写程序了,写完程序之后自己写一些单元测试来验证自己写的方法,然后自测没问题。那交给的软件测试人员。

    • 2.7.测试

  软件测试人员针对各种各样的场景,设计好测试用例(就是想要做的事情以及对他有一个期望结果)。把这些用例都测试完成之后,产品就可以上线了。

    • 2.8.软件维护

  线上运行过程中发现的问题和客户反馈的问题,要进行维护进行解决。这样才是正式的软件的一生所包含各个阶段的事情。

三、高质量软件

  生成一个高质量的软件,这个软件里边除了有很好的代码,有经过测试之后的软件,能够上线的程序,同时还要有比较完善的文档,这个文档是能够为后来人所用的,不管这个文档拿出去给客户看,还是这个文档留下来给后续入职的其他新员工去看,都能够产生一定的依据,产生一定的作用。这样的软件叫做好的软件。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

测试开发视频教程、学习笔记领取传送门!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/192553.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言之初识指针

前言 🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻推荐专栏: 🍔🍟🌯 c语言初阶 🔑个人信条: 🌵知行合一 🍉本篇简介:>:介绍c语言中的新知识—指针有关的知识. 金句分享: ✨知…

大数据舆情监控流程,TOOM大数据舆情监控范围

大数据舆情监控是一种通过大数据技术,分析社会舆情信息,掌握舆情动态的方法。它利用大数据的存储和处理能力,对海量的网络舆情数据进行收集、清洗、分析、呈现,帮助企业和机构了解公众的想法和评价,掌握舆情动态&#…

【正点原子FPGA连载】第三十一章Linux内核定时器实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Linux开发指南

1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id692450874670 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第三十一章Linux…

【Linux】多线程详解(中)

🎇Linux: 博客主页:一起去看日落吗分享博主的在Linux中学习到的知识和遇到的问题博主的能力有限,出现错误希望大家不吝赐教分享给大家一句我很喜欢的话: 看似不起波澜的日复一日,一定会在某一天让你看见坚持…

哈希表的概念(散列表)

一、基本概念 散列表特点 : 数据元素的关键字与存储地址直接相关 通过哈希函数建立“关键字”与“存储地址”的联系 若不同的关键字通过散列函数映射到同一个值,则称它们为 “同义词” 通过散列函数确定的位置已经存放了其他元素,则称这种…

今日题目分享(两个维度的思考,双指针/动态规划,b站视频讲解)

先直接上连接 941有效的山脉数组 845数组中的最长山脉 2100适合打劫银行的日子. 2420找到所有好下标. 什么是两个维度? 这里是从代码随想录里面学习到的思考方式,开门见山地说,就是两个方面去考虑题目,比如,要求第…

vue前端框架应用案例(二)实现简单的SPA应用

目录路由使用步骤案例效果案例目录结构App.vueAbout.vueHome.vueindex.jsmain.jsindex.html本博客参考尚硅谷官方课程,详细请参考 【尚硅谷bilibili官方】 本博客以vue2作为学习目标(请勿混淆v2与v3的代码规范,否则可能出现报错&#xff09…

docker搭建nacos集群

一、先搭建MySQL主从模式 Nacos使用delby作为内嵌数据库,在使用集群作为部署方式时,内嵌数据库无法保持数据同步与数据一致,故一般使用外接MySQL数据库的方式保存配置文件。使用一主一从的方式搭建,实现主从复制与读写分离。 1.…

线缆也可能是静电危害的罪魁祸首?

众所周知,几乎所有的电子元器件都是对静电敏感的,如果处理不当,将恶化元器件的性能,甚至造成彻底损坏。在低温干燥的环境中,极易产生静电,当然静电主要还是通过摩擦产生的。除了我们所熟知的静电产生的原因…

史上最全的测试用例设计方法

目录 前言 等价类划分方法: 边界值分析方法: 错误推测方法 因果图方法 判定表驱动分析方法 总结 前言 今天还是给大家带来一些干货,总结了一下测试用例的设计方法。具体内容太多我总结成了文档,获取方法在文末。这里截取部…

Swagger2Swagger3

一、什么是Swagger swagger是当下比较流行的实时接口文文档生成工具。接口文档是当前前后端分离项目中必不可少的工具,在前后端开发之前,后端要先出接口文档,前端根据接口文档来进行项目的开发,双方开发结束后在进行联调测试。 所…

Python程序设计之 —— 简易学生信息管理系统

大家好,我是 Enovo飞鱼,今天分享一个 Python程序设计之 —— 简易学生信息管理系统 ,小白或者正在学习Python的小伙伴推荐阅读,加油💪。 目录 前言 Python 简介 Python 特点 一、项目来源及背景 二、功能设计 …

PTA L1-023 输出GPLT(详解)

前言:本期是关于输出GPLT的详解,内容包括四大模块:题目,代码实现,大致思路,代码解读,今天你c了吗? 题目: 给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字…

概论_第7章_参数估计__区间估计

先看知识结构图 一 置信区间 定义 定义: 设σ\sigmaσ 为总体的未知参数, θ^1θ^1(x1,x2,...,xn),θ^2θ^2(x1,x2,...,xn)\hat \theta_1 \hat\theta_1(x_1,x_2, ..., x_n), \hat \theta_2 \hat\theta_2(x_1,x_2, ..., x_n)θ^1​θ^1​(x1​,x2​,...,x…

YB菜菜的机器学习自学之路(七)——简单了解keras框架

YB菜菜的机器学习自学之路(七)——简单了解keras框架前提说明1. 机器学习框架-keras1.1 keras框架的特点1.2 keras框架实现一个神经元的建立的过程2. 举例说明2.1 一个神经元 和输入特征为1的案例2.2 多神经元 和单输入特征为1的案例2.3 多输入&#xff…

第11-15章

第11章 枚举和注解 11.1举例 要求创建季节(Season) 对象,请设计并完成。 但是,季节的值是有限的几个值(4个季节),不可以再多。 就可以用枚举来解决 枚举(enumeration,简写enum),是一组常量的集…

【自学Python】Python字符串对齐教程

Python字符串左对齐 大纲 Python字符串左对齐教程 Python 字符串的左对齐,即在我们需要设定 字符串 为固定的长度时,如果字符串的长度不够,则我们可以指定使用特定的字符在字符串的右边进行填充,从而达到左对齐的目的。 在 Pyt…

请求域名requests.(url = 地址)报错

报错:raise MissingSchema(requests.exceptions.MissingSchema: Invalid URL titles: No scheme supplied. Perhaps you meant http://titles?报错分析:response requests.get(urlurl,headersheaders) # print(response) response.encoding"utf-…

Docker逃逸二三事

Docker逃逸在渗透测试中面向的场景大概是这样,渗透拿到shell后,发现主机是docker环境,要进一步渗透,就必须逃逸到“直接宿主机”。甚至还有物理机运行虚拟机,虚拟机运行Docker容器的情况。那就还要虚拟机逃逸了。所以本…

【LeetCode】2325. 解密消息

给你字符串 key 和 message ,分别表示一个加密密钥和一段加密消息。解密 message 的步骤如下: 使用 key 中 26 个英文小写字母第一次出现的顺序作为替换表中的字母 顺序 。将替换表与普通英文字母表对齐,形成对照表。按照对照表 替换 messag…