多测师_测试理轮_002(v模型和H模型)
为什么要测试?
1、软件非正常运行或自身缺陷会引发问题
2、代码和文档是人写的,难免会出错
3、环境原因影响软件(内存不足,存储,数据库溢出等)
4、软件测试活动是保证软件质量的关键之一
什么是测试?
软件行业:
1、验证软件的正确性
2、发现软件中的缺陷(bug)
如何做一个成功测试?
能发现前所未有的错误的测 试
软件生命周期?
指软件从产生到报废的整个过程,是一种时间概念。
通常软件生命周期包括哪些阶段?
1)客户问题引入或定义
? 2)可行性分析(涉及经济(商业论证),政治,
法律,技术等)
? 3)项目招投标
? 4)项目立项
? 5)需求分析
? 6)开发阶段(设计,编码,测试)
? 7)维护
软件生命周期模型:
--瀑布模型(waterfall)
? --V模型
? --W模型
? --H模型
? --X模型
? --敏捷开发模型
? --迭代开发模型
? --增量开发模型
v模型
概要设计:简称HLD 是一个文档
内容:架构的初步设计文档,使用说明什么类型数据库,架构的描述,设计,模块的名称(理解为:要盖一栋房,文档里面记录着放在的大概设计的规格)
详细设计: 简称 LLD 也是一个文档
内容:针对功能具体的实现文档,模块的具体实现,具体设计,架构的具体描述(理解为:房子的具体的装饰设计)
需求 (软件需求规格说明书) 是一个文档 简称: SRS
内容:对整个项目的设计,框架,功能,模块的描述,
四个阶段(重点)
1、单元测试 UT UNIT TEST(简称白盒测试---开发自测)
单元测试:是指验证软件单元是否满足详细设计文档的规格,能正确的执行,主要是对代码的测试;
单元测试也是最小的测试单位;
在工作中,单元测试一般都是开发自测,如果测试要进行单元测试,对测试的技术要求非常高,必须要懂开发语言;
2、集成测试 (IT)
集成测试是指多个单元组合验证软件是否满足概要设计文档的规格,能正常执行,主要是模块与模块之间数据的交互,我们也叫接口测试。
3、系统测试 (ST)
系统测试是指把软件进行正常的运行,对整个系统进行测试,验证这个系统能正常的运行,主要是测试一个整体业务的流程。
4、验收测试:(UAT)重点
验收测试是指:站在用户的角度对系统进行测试,验证系统满足用户需求。
验收测试分为alpha(α) 和beta (β)
如果公司验收需要经过α测试 和β测试,都是先α(内部测试)然后β测试(客户方测试)
alpha(α) 和beta (β)区别:
1、α测试地点是在公司;β测试地点一般在客户方
2、α测试 都是内部人员进行测试,开发,测试都在现场,及时发现问题,及时解决;
β测试是客户方的员工测试,发现问题后统一反馈给开发,在解决;
3、α测试时间比较短 ,测试人员比较集中,
β测试 时间较长,测试人员不集中
IT和ST 合并为 sit 系统集成测试 (sit测试,sit环境(技术用来测试的环境))
uat 验收测试 ( uat测试,uat环境 (专门用来验收环境))
H模型
拿到一个需求(SRS)
了解概要设计(测试文档)
了解详细设计(测试文档)
需求评审会议(测试,开发,产品)产品主持会议
编写测试计划(测试经理,测试组长)
根据测试计划,分配工作
编写测试用例 测试
用例评审(两种评审方式:1、组内评审 :测试,开发,产品,交叉评审:测试同事之间评审)
用例通过,导入到用例管理工具中(禅道)
用例分配给对应的负责
部署环境(测试环境(测试),开发环境,线上环境)
部署:运维,测试经理,测试组长,自己
开发提测,也是提交代码包(达到准入的要求)
拿到代码包部署到环境中
冒烟测试(重点)
冒烟测试(称为版本验证测试,提交测试)是指:对新版本的主要功能,基本功能进行测试,如果通过,那么冒烟测试通过,如果冒烟识失败,那么就把版本打回给开发进行修改,直到冒烟通过;
每一次开发提交新版本,测试都需要在测试环境中进行冒烟测试;
冒烟测试通过以后才能进入sit测试(系统集成测试);
sit测试(系统集成测试) 一般一个项目有三次,项目周期长可能4次,更多;
第一次sit测试是全量测试(所有编写的用例都要进行测试);
测试小结:包括用例数,bug数,新增用例数等 ;
开发修改bug
第二sit测试
冒烟测试 ,sit2测试,(回归测试)
回归测试:是系统维护阶段进行的验证测试
区别:测试的阶段不同
冒烟测试是在版本提交时进行的第一个测试,回归测试是在维护阶段的测试;
用例来源:
1、冒烟测试的用例
2、验证上一个版本提交的bug用例;
3、测试和bug相关联的模块的用例
4、你认为可疑的测试用例或者是测试场景
5、测试补充的测试用例或测试场景
第二次测试小结
有bug转给开发
开发修改bug;
提交第三次版本
sit3测试
冒烟测试
测试用例
达到准出要求;
输出测试报告 -----表示sit测试完成
--------
uat 验收测试 (uat环境) --通过uat通过
系统版本打包(封板:是封装版本)
----------
上线
上线成功 ,上线失败,版本回退,继续用之前的版本
回退的版本要重新让开发修改,测试 ,上线
----------
上线前会准备线上测试数据,上线后我们在线上测试下新版本;
如果线上没问题,上线完成,
如果有bug,首先分析bug对项目的影响,影响大,退回版本;影响小,开发和测试分析并上报,建议下一个版本修改。
上线成功 ;
1、说下你是如何开展测试工作的?
2、冒烟测试和回归测试的区别?
3、说下每一轮sit的测试用例怎么来的?
4、你们公司如何去评审用例?谁主持评审会议?如何去开评审?
5、
敏捷开发:
针对于需求变化快,交付周期短的项目,轻量级开发
(一个星期,两个星期做一个需求)
tapd 腾讯项目管理工具
增量开发模型:
迭代开发模型:
有一个需求,划分多个模块,按优先级来实现,在增加量来交付;
测试原则:
1、尽早介入测试
2、测试是无穷尽
3、测试根据用户需求
4、测试不仅是软件的测试,(兼容性,可靠性)
5、二八原则
6、克服杀虫剂效应,
7、测试关注点不一样(性能,安全)
8、尽量选择第三方测试,
1、你写过测试计划?测试计划的内容?
2、测试中的测试文档?
多测师_测试理轮_002(v模型和H模型)的更多相关文章
- 测试的V模型和W模型
V模型 :后测试 优点: 1.每一阶段都清晰明了,便于把控开发的每一个过程. 2.既包含了单元测试又包含了系统测试 缺点: 1.测试介入的比较晚,所以开发前期的缺陷无从修改. 2.开发和测试串行. W ...
- 多测师_讲解python__004 函数
# 函数:一个工具,随调随用# 降级代码冗余## 增加代码的复用性,提高开发效率,为了不成为cv战士## 提高程序扩展性## 函数有两个阶段:定义阶段,调用阶段.## 定义时:只检查函数体内代码语法, ...
- 多测师_肖sir_性能测试之性能测试了解001(jmeter)
一.了解jmeter 1.Jmeter的概念? JMeter是Apache组织开发的基于Java的压力测试工具.具有开源免费.框架灵活.多平台支持等优势.除了压力测试外,JMeter在接口测试方面也有 ...
- 多测师_肖sir _python 练习题(一)100以内奇数,偶数,质数胡计算
(1)求1~100的和方法: 方法一:print(sum(range(1,101))) 方法二: sum1 = 0 i = 1 while True: sum1 = sum1 + i if i == ...
- 多测师_高级讲师肖sir讲解html中 Button跳转连接方法归纳
第一种方法: 1.1<a href="http://www.baidu.com"> <input type="button" name=& ...
- 多测师_高级肖sir分享pycharm中设置主题和设置代码颜色方法
一.修改pycharm中的主题颜色 二.修改代码颜色 File-->Settings-->Editor--> Color Scheme-->Language Defaults- ...
- 多测师_肖sir_git _004(版本控制器)
gitgit 是一个开源的分布式版本控制系统,用于敏捷高效的处理任何大小的项目.git是linux torvalds 为了帮助管理linux内核开发的一个开放源码的版本控制软件.git与常用的版本控制 ...
- 多测师讲解自动化--rf断言(下)--_高级讲师肖sir
1.Page Should Contain 1.1存在页面上的内容 1.2 不存在页面上的内容, 运行抛异常 1.3 Page Should Not Contain 1.4 1.5 输入页面元素,判断 ...
- 多测师浅谈 学员实现价值就是我们的幸福_高级讲师肖sir
学员实现价值就是我们的幸福 作为一名资深的IT高级讲师,在传统的行业IT薪资基本都是过万,作为一名IT培训教师,培养出在不同领域的测试,并且接触各种各样的产品,目前市场流行的比如银行业务系统,语音类系 ...
随机推荐
- 剑指 Offer 42. 连续子数组的最大和
题目描述 输入一个整型数组,数组中的一个或连续多个整数组成一个子数组.求所有子数组的和的最大值. 要求时间复杂度为\(O(n)\). 示例1: 输入: nums = [-2,1,-3,4,-1,2,1 ...
- 数据库连接池设计和实现(Java版本)
1 前言 数据库连接池是目前系统开发必须面对和考虑的问题,原理并不复杂,主要是减少重复连接数据库的代价:在系统中创建预期数量的数据库连接,并将这些连接以一个集合或类似生活中的池一样管理起来,用到的时候 ...
- 吴恩达《深度学习》-第二门课 (Improving Deep Neural Networks:Hyperparameter tuning, Regularization and Optimization)-第一周:深度学习的实践层面 (Practical aspects of Deep Learning) -课程笔记
第一周:深度学习的实践层面 (Practical aspects of Deep Learning) 1.1 训练,验证,测试集(Train / Dev / Test sets) 创建新应用的过程中, ...
- 深度理解volatile关键字
最轻量的同步机制 获取被volatile修饰的变量的时候,每次都要从主内存中获取 设置被volatile修饰的变量的时候,每次都要刷回主内存当中 当其他线程调用的时候,会将自己线程当中保存的变量值置为 ...
- [LeetCode]230. 二叉搜索树中第K小的元素(BST)(中序遍历)、530. 二叉搜索树的最小绝对差(BST)(中序遍历)
题目230. 二叉搜索树中第K小的元素 给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素. 题解 中序遍历BST,得到有序序列,返回有序序列的k-1号元素. 代 ...
- 尚硅谷阳哥JVM笔记
JVM体系结构 类加载器(快递员): 只负责加载java文件,编译后的class文件在文件开头有特定的文件表示,将class文件字节码内容从硬盘加载到JVM内存中并将这些内容转换成方法区的运行时数据结 ...
- 云计算openstack核心组件——glance— 镜像服务(6)
一.glance介绍: Glance是Openstack项目中负责镜像管理的模块,其功能包括虚拟机镜像的查找.注册和检索等. Glance提供Restful API可以查询虚 ...
- VMware虚拟机ubuntu下安装VMware Tools步骤
双击VMware Tools进入 找到后缀.tar.gz的压缩文件 将压缩文件复制到home目录下,home目录即左侧的主目录文件夹 打开命令行终端,默认应该就是home目录,如果不是home目录,在 ...
- java.lang.UnsupportedOperationException: A TupleBackedMap cannot be modified.解决以及探究
java.lang.UnsupportedOperationException: A TupleBackedMap cannot be modified. at org.springframework ...
- 坐标下降(Coordinate descent)
坐标下降法属于一种非梯度优化的方法,它在每步迭代中沿一个坐标的方向进行线性搜索(线性搜索是不需要求导数的),通过循环使用不同的坐标方法来达到目标函数的局部极小值.