为什么要测试?
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模型)的更多相关文章

  1. 测试的V模型和W模型

    V模型 :后测试 优点: 1.每一阶段都清晰明了,便于把控开发的每一个过程. 2.既包含了单元测试又包含了系统测试 缺点: 1.测试介入的比较晚,所以开发前期的缺陷无从修改. 2.开发和测试串行. W ...

  2. 多测师_讲解python__004 函数

    # 函数:一个工具,随调随用# 降级代码冗余## 增加代码的复用性,提高开发效率,为了不成为cv战士## 提高程序扩展性## 函数有两个阶段:定义阶段,调用阶段.## 定义时:只检查函数体内代码语法, ...

  3. 多测师_肖sir_性能测试之性能测试了解001(jmeter)

    一.了解jmeter 1.Jmeter的概念? JMeter是Apache组织开发的基于Java的压力测试工具.具有开源免费.框架灵活.多平台支持等优势.除了压力测试外,JMeter在接口测试方面也有 ...

  4. 多测师_肖sir _python 练习题(一)100以内奇数,偶数,质数胡计算

    (1)求1~100的和方法: 方法一:print(sum(range(1,101))) 方法二: sum1 = 0 i = 1 while True: sum1 = sum1 + i if i == ...

  5. 多测师_高级讲师肖sir讲解html中 Button跳转连接方法归纳

    第一种方法: 1.1<a href="http://www.baidu.com">   <input type="button" name=& ...

  6. 多测师_高级肖sir分享pycharm中设置主题和设置代码颜色方法

    一.修改pycharm中的主题颜色 二.修改代码颜色 File-->Settings-->Editor--> Color Scheme-->Language Defaults- ...

  7. 多测师_肖sir_git _004(版本控制器)

    gitgit 是一个开源的分布式版本控制系统,用于敏捷高效的处理任何大小的项目.git是linux torvalds 为了帮助管理linux内核开发的一个开放源码的版本控制软件.git与常用的版本控制 ...

  8. 多测师讲解自动化--rf断言(下)--_高级讲师肖sir

    1.Page Should Contain 1.1存在页面上的内容 1.2 不存在页面上的内容, 运行抛异常 1.3 Page Should Not Contain 1.4 1.5 输入页面元素,判断 ...

  9. 多测师浅谈 学员实现价值就是我们的幸福_高级讲师肖sir

    学员实现价值就是我们的幸福 作为一名资深的IT高级讲师,在传统的行业IT薪资基本都是过万,作为一名IT培训教师,培养出在不同领域的测试,并且接触各种各样的产品,目前市场流行的比如银行业务系统,语音类系 ...

随机推荐

  1. JVM学习第一天(虚拟机的前世今生与与Java的内存区域)

    其实说JVM的时候有很多人会懵, 也很不理解,我会写Java代码就可以了,我干嘛要学这个,其实不是的,学习JVM是很有必要性的; 为什么要了解JVM 1:写出更好,更健壮的Java程序; 2:提高Ja ...

  2. Zabbix Agent报“listener failed: zbx_tcp_listen() fatal error: unable to serve on any address”

    一台服务器的Zabbix Agent升级后,在Zabbix Server发现Zabbix Agent无法访问.检查Zabbix Agent发现服务停止了,启动Zabbix Agent后,发现服务马上又 ...

  3. rabbitmq集成和实战

    与 Spring 集成 pom 文件 使用 Maven,这里使用的 4.3.11,所以这里引入的是 rabbit 是 2.0.0,如果兼容性的话请自行去 Spring 的官网上去查 这里补充一下,sp ...

  4. 详解 LeetCode_007_整数反转(Java 实现)

    目录 LeetCode_007_整数反转 题目描述 总体分析 解决方案 小结 LeetCode_007_整数反转 题目描述 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示 ...

  5. synchronized的实现原理——锁膨胀过程

    @ 目录 前言 正文 偏向锁 轻量锁 批量重偏向 批量撤销 重量锁 总结 前言 上一篇分析了优化后的synchronized在不同场景下对象头中的表现形式,还记得那个结论吗?当一个线程第一次获取锁后再 ...

  6. 学习go的一些笔记

    反射 reflect type CfgSt struct{ Match *int64 `ini:"match"` Desc string `ini:"desc" ...

  7. [程序员代码面试指南]二叉树问题-找到二叉树中的最大搜索二叉树(树形dp)

    题意 给定一颗二叉树的头节点,已知所有节点的值都不一样,找到含有节点最多的搜索二叉子树,并返回这个树的头节点. 题解 在后序遍历过程中实现. 求解步骤按树形dp中所列步骤.可能性三种:左子树最大.右子 ...

  8. 内存管理初始化源码5:free_area_init_nodes

    start_kernel ——> setup_arch ——> arch_mem_init ——> |——> bootmem_init  |——> device_tree ...

  9. 面试官:哪些场景会产生OOM?怎么解决?

    这个面试题是一个朋友在面试的时候碰到的,什么时候会抛出OutOfMemery异常呢?初看好像挺简单的,其实深究起来考察的是对整个JVM的了解,而且这个问题从网上可以翻到一些乱七八糟的答案,其实在总结下 ...

  10. Linux实战(15):Centos 防火墙常见端口命令

    开启命令 firewall-cmd --zone=public --add-port=80/tcp --permanent 关闭命令 firewall-cmd --zone=public --remo ...