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-3年
中级:3-5年
高级:5年以上
软件缺陷产生的原因:

  1. 需求解释有错误
  2. 用户需求定义错误
  3. 需求记录错误
  4. 设计说明有误
  5. 编码说明有误
  6. 程序代码有误
  7. 测试错误
  8. 问题修改不正确
  9. 不正确的结果是由于其他的缺陷而产生的。

缺陷发现的越早,修复这个缺陷的代价就越小。
软件测试环境:
测试环境=硬件+软件+网络;
硬件:笔记本,服务器(硬件测试);
软件:不同操作系统;
针对web端的:不同浏览器:ie,火狐,谷歌
网络:局域网、互联网。
**

测试流程:

**
1.1 {详细概要设计->编写代码->自测->提测}
1.立项->产品说明书->需求文档->需求文档评审->{ ->}2.搭建测试环境
1.2{编写测试计划->编写测试用例->测试用例的评审->}
->}搭建测试环境->冒烟测试->功能测试->bug管理(禅道)->回归测试->验收->上线

立项:公司领导层确认我们要生产什么产品,开立项会;
如果有产品人员:会出一个产品说明书(prd);
如果有需求人员:需求人员编写需求文档;(有产品就出产品说明书,有需求人员就编写需求文档)
需求文档评审:需求人员下发,谁编写的需求文档就组织(开发、测试、需求人员、项目经理都会参加会议)评审需求,判断需求文档中的东西符不符合用户使用;
1.1详细概要设计:设置表、字段;
编码:在公司的开发环境下进行编码;(实现功能)
自测:开发人员自测代码;
提测:提交给测试人员进行测试;
1.2 编写测试计划:指定谁来测试,在哪一天测什么东西,在那个环境上测试东西;
编写测试用例:注册或别的什么功能的测试用例;
测试用例的评审:参加需求评审的人都要参加测试用例的评审;(测试人员组织)
搭建测试环境:(如果公司有测试环境就不需要搭建,如没有,就自己打环境)把项目部署在环境上,进行测试;
冒烟测试:先测主功能能否实现;
功能测试:测试功能;
bug管理:如果测试有问题,就把问题提交到对应的bug管理工具里,指派给对应的开发修改,修改完进行测试;
回归测试:这个版本中的bug有没有修改,修改完之后是否有引发了新的bug;(如果按照测试用例测试过后没有问题,就进行验收)
验收:(公司里会有验收环境;参加验收人员:负责对应需求的开发人员、测试人员自己、本项目经理、甲方公司客户),功能测试实现完毕才能进行上线;
上线:项目上线。

软件测试分类

按阶段划分:单元测试、集成测试、系统测试、验收测试;
单元测试、集成测试、系统测试、验收测试
单元测试:测试最小的一个函数;
集成测试:模块与模块之间组成的接口,做接口测试;
系统测试:对应项目功能进行测试;
验收测试:功能测试完毕之后进行回归,回归之后进行验收;
按是否运行程序划分:静态测试、动态测试;
静态测试:不是实际运行被测试软件,而只是静态的查看程序代码、文档、界面中存在的错误的过程;
动态测试:实际运行被测程序,输入相应的测试数据,查看得到的数据与期望数据是否相符;
按是否查看源代码划分:白盒测试、黑盒测试;
黑盒测试包含功能测试、性能测试;
功能测试可以细分为易用性测试、安装测试、兼容性测试、逻辑功能测试、界面测试;
性能测试可以分为一般性能测试、稳定性测试、负载测试、压力测试;
黑盒白盒测试
黑盒测试:测试这个软件,不管内部是如何是实现的,只需要给一个结果,要拿到一个预期的结果;不需要关注代码是如何实现的;
白盒测试:需要观察内部代码块具体的逻辑是如何设计的,看代码块能否实现;
按其他分类:回归测试、冒烟测试、随机测试。
回归测试:开发修改bug之后,查看这个版本中的bug是否被修改完毕,是否又产生了新的bug;
冒烟测试:主功能测试,先验证软件的基本功能是否实现,是否具备可测性;
随机测试:所有输入数据都是随即生成的。

软件开发模式
线性模式、渐进式模式;
迭代和增量;
迭代:反复求精的过程;
增量:逐快增加;
迭代:第一次迭代时,模块已经写好了,只不过内容没有填充,第二次迭代,只填充模块里具体实现的方法,第三次迭代时,填写第二次迭代时候没有实现的方法;
增量:模块实现后,只实现对应的功能,下次迭代时,直接把这个模块写上去,然后增加模块的功能。

软件生命周期
V模型,W模型,螺旋模型,瀑布型生命周期,迭代模型,快速原型模型
边做边改模型:没有规格说明,没有设计,只是跟着客户的需求一次次进行修改,知道满意为止;
瀑布型生命周期:一步步实现,先分析,设计,编码,测试,一套流程;
优点:
为项目提供了阶段划分的检查点;
当前阶段完成后,只需要关注后续阶段;
缺点:
每一步都必须保证上一步已经实现了。
原型模式:听取用户意见–>建造修改原型–>测试运用原型。
V模型:
V模型的左边下降是开发过程各阶段,左边上升是测试过程的各阶段
V模型的优点在于它非常明确的标明了测试过程中存在的不同级别,并且清楚的描述了这些测试阶段和开发各阶段的对应关系。
V模型流程图

优点:

  1. 每个阶段都清晰明了,便于控制开发的每个过程;
  2. 既包含单元测试又包含系统测试;

缺点:

  1. 开发在前,测试在后,如果前期出现问题,可能发现不了;
  2. 测试和开发串行。

W模型:
V模型的发展,而且测试对象不只是程序,需求、功能和设计也要测试。开发和测试同时进行,有利于尽早发现问题;
W模型流程图

优点:

  1. 测试伴随软件的整个生命周期,在求分析结束之后,就可以进行需求分析测试了;
  2. 测试与开发时并行独立进行的;

缺点:

  1. 有些项目,开发过程中没有文档的产生,所以没办法使用W模型;
  2. 对于需求和设计的测试技术要求很高,实践很难。
  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-11-23 12:39:57  更:2021-11-23 12:41:34 
 
开发: 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/18 4:32:23-

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