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.软件开发过程模型(了解)

1.1?瀑布模型

1.1.1 定义

线性模型的一种,在所有的模型中占有重要地位,是其他模型的一个基础

每个阶段执行一次,按照线性模型的顺序进行软件开发

1.1.2 优缺点

瀑布模型
地位:这是一种经典模型,提供了软件开发的基本框架。
优点:
1)各阶段划分清晰
2)强调计划与需求分析
3)适合需求稳定的产品开发
缺点:
1)单一流程,不可逆
2)风险显露得晚,纠正机会少
3)测试只是其中一个阶段,缺乏全过程测试思想
4)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
5)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险。
6)早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。

1.1.3 改良

沿用瀑布模型的线性思想,细化了各个阶段,在某些重要关注的阶段之间掺入迭代思想

1.1.4 应用场景

银行

保险

建筑

传统行业

1.2 快速原型模型

1.2.1步骤

step1

建造一个快速原型,实现用户和系统的交互,用户对原型进行评价,进一步细化待开发软件的需求,通过逐步调整原型使其满足用户的要求,开发人员可以确定用户真正的需求。

step 2

在第一步的基础上开发出用户满意的软件产品

1.2.2?优缺点

优点:克服瀑布模型的缺点,更好地满足用户的需求并减少由于软件需求不明确带来的项目开发风险。适合预先不能确切定义需求的软件系统的开发。

缺点:不适合大型系统的开发(适合开发小型的、灵活性高的系统)前提要有一个展示性的产品原

型,因此在一定程度上可能会限制开发人员的创新。

1.2.3?应用场景

微信

抖音

互联网行业

1.3 螺旋模型

1.3.1 模型

本质上,将线性模型实现多遍

比较浪费时间,在实际的开发中,使用比较少

1.3.2?优缺点

优点
螺旋模型很大程度上是一-种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评
估。
?缺点
采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必
造成重大损失。过多的迭代次数会增加开发成本,延迟提交时间。

1.3.3?应用场景

大型复杂项目

1.4 三种开发模型的区别

需求项目规模模型
清晰瀑布模型
不清晰中小型快速原型
不清晰螺旋模型

2.?测试模型

2.1 V模型

2.1.1?单元测试

模块测试,针对软件设计中的最小单位--程序模块

又称模块测诚,针对软件设计中的最小单位—程序模块,进行正确性检查的测试工作。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。 单元定义:C中指一个函数,Java中指一个类,在图形化的软件中,单元一般指1个窗口,1个菜单。

2.1.2 集成测试

组装测试,在单元测试的基础上,将所有程序模块进行有序的,递增的测试,重点测试不同模块的接口部分

2.1.3?系统测试(system testing):

指的是将整个软件系统看为一个整体进行测试,包括对功能、性能、以及软件所运行的软硬件环境进行测试。 系统测试在系统集成完毕后进行测试,前期主要测试系统的功能是否满足需求,后期主要测试系统运行的性能是否满足需求,以及系统在不同的软硬件环境中的兼容性等。

2.1.4?验收测试

α测试:Alpha是内测版本,即现在所说的C8,比版本表示该软件仅仅是一个初步完成品,通常只在软件开发者内部交流,也有很少一部分发布给专业测试人员。一般而言,该版本软件的bug较多,普通用户最好不要安装。

β测试:Beta是公测版本,是对所有用户开放的测试版本。该版本相对于a颜已有了很大的改进,消除了严重的错误,但还是存在着一些陷需要经过大规模的发布试来进一步消除。这一版本通常由软件公司免费发布,用户可从相关的站点下载。通过一些专业爱好者的测试,将结果反馈给开发者,开发者们再进行有针对性的修改。该版本也不适合一般用户安装。

λ测试:Camma版本,指的是软件版本正式发行的候选版。该版本已经相当成熟了,与即将发行的正式版相差无几,成为正式反布的候选版本。

软件正式版本推出之前的几个版本,需要有人测试一下,看看是不是有问题。在开发该软件的公司内部的由该公司内部人员式的称为:Alpha测试,Alpha 测式主要看有没有功能缺失或系统错误,Alpha 测试完后一般不会有大问题了。然后把软件拿给用户测试称为:beta 测试,主要是看用户对软件外观、使用方便等的反应。这么多的式版一方面为了最终产品尽可能地满足用户的需要,另一方面也尽量成少了软件中的bug。然后做过一些修改,成为正式发布的候选版本时,叫做gamma(现在叫做RC-ReleaseCandidate)。 简单来说,阿尔法测试主要是测试人员在开发环境下的测试,贝塔测试是在实际环境中的测试,或者公司内部人员在模拟真实环境中的测试。

2.1.5?优缺点

优点:相对于瀑布模型,V模型测试能够尽早的进入到开发阶段。
缺点:虽然测试尽早的进入到开发阶段,但是真正进行软件测试是在编码之后,这样忽视了测试对需求分析,系统设计的验证,时间效率上也大打折扣。
明确标注了测试过程中存在不同的测试类型,明确表示出了开发阶段与测试各阶段的对应关系。
单元测试:是否满足详细设计的要求
集成测试:验证已测试过的部分是否可以很好地结合在一起
系统测试:检验系统功能、性能是否达到系统的要求。
验收测试:确定软件的时限是否满足用户需求或合同需求
1、优点:包含了底层测试(单元测试)和高层测试(系统测试);
?
      清楚的标识了开发和测试的各个阶段;
?
      自上而下逐步求精,每个阶段分工明确,便于整体项目的把控。
2、缺点:自上而下的顺序导致了,测试工作在编码之后,就导致错误不能及时的进行修改;
?
   ? ? 实际工作中,需求经常变化,导致v模型步骤,反复执行,返工量很大,灵活度较低。
 改良:每个步骤都可以进行小的迭代工作。

2.2 w模型

2.2.1 模型

2.2.2 优缺点

优点:
    开发伴随着整个开发周期,需求和设计同样要测试;
    更早的介入测试,可以发现初期的缺陷,修复成本低;
    分阶段工作,方便项目整体管理。
缺点:
    开发和测试依然是线性的关系,需求的变更和调整,依然不方便;
    如果没有文档,根本无法执行w模型;对于项目组成员的技术要求更高!
    管理成本很高
    沟通成本很高

2.3 H模型

2.3.1 模型

定义:相对于V模型和W模型,H模型将测试活动完全独立出来,形成了一个完全独立的流程,将测试准备活动和测试执行活动清晰地体现出来。

H模型的优点:
  >开发的H模型揭示了软件测试除测试执行外,还有很多工作;
  >软件测试完全独立,贯穿整个生命周期,且与其他流程并发进行;
  >软件测试活动可以尽早准备、尽早执行,具有很强的灵活性;
  >软件测试可以根据被测物的不同而分层次、分阶段、分次序的执行,同时也是可以被迭代的。
?
H模型的缺点:
  >管理型要求高:由于模型很灵活,必须要定义清晰的规则和管理制度,否则测试过程将非常难以管理和控制;
  >技能要求高:H模型要求能够很好的定义每个迭代的规模,不能太大也不能太小;
  >测试就绪点分析困难:测试很多时候,你并不知道测试准备到什么时候是合适的,就绪点在哪里,就绪点的标准是什么,这就对后续的测试执行的启动带来很大困难;
  >对于整个项目组的人员要求非常高:在很好的规范制度下,大家都能高效的工作,否则容易混乱。例如:你分了一个小的迭代,但是因为人员技能不足,使得无法有效完成,那么整个项目就会受到很大的干扰。

2.3.4?对比总结

  v模型适用于中小企业,
  w模型适用于中大型企业(因为人员要求高),
  h模型人员要求非常高,很少有公司使用。

3.测试的分类

3.1功能测试

写测试用例

3.2 自动化测试

python

java

3.3 接口测试

postman

3.4 性能测试

例如:一亿人同时访问

jmeter

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-08-27 12:10:10  更:2021-08-27 12:10:38 
 
开发: 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年11日历 -2024/11/17 22:43:48-

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