当前位置: 首页 > news >正文

肖 sir_就业课__004项目流程(H模型)

项目流程:
一、面试提问(h模型)
1、你说下你们公司测试流程?
2、给你一个需求你会怎么做?
3、你讲下你的工作?
4、谈谈你是如何去测试?

答案:h模型

在这里插入图片描述
要求第一人称来写
讲解简化文字流程:
内容如下:
拿到需求------需求分析----编写测试计划—编写测试用例-----用例评审----导入用例管理工具—搭建环境–开发提交代码包–部署环境—冒烟测试----sit系统集成测试----提交bug—开发修改bug—进行sit2测试—冒烟-测试–
----以此类推到0bug,用例100%,输出测试报告(sit测试测完)----验收测试(uat测试)-----测试通过------封装版本----上线----线上测试------测试通过----测试完成
备注:
(1)写用例
(2)搭建环境
(3)测试报告
(4)测试计划

升级版本
拿到需求------需求分析----编写测试计划—编写测试用例-----用例评审----导入用例管理工具—搭建环境–开发提交代码包(开发合并分支)–jnnkins构建(部署),获取到代码包====
部署环境—冒烟测试----sit系统集成测试----提交bug—开发修改bug–jenkins构建(部署),获取到最新代码包—冒烟-测试–
----以此类推到0bug,用例100%,输出测试报告( 表示sit测试完成)----验收测试(uat测试)-----测试通过------封装版本----上线----线上测试------测试通过----测试完成

讲解详细文字流程:
内容如下:
拿到一个需求(SRS)软件需求规格说明书
了解概要设计(测试文档)
了解详细设计(测试文档)
需求评审会议(测试,开发,产品)产品主持会议
编写测试计划(测试经理,测试组长,我)
根据测试计划,分配工作
编写测试用例 测试
用例评审(两种评审方式:1、组内评审 :测试,开发,产品,交叉评审:测试同事之间评审)
用例通过,导入到用例管理工具中(禅道)
用例分配给对应的负责
部署环境(测试环境(测试),开发环境,线上环境)
部署:运维,测试经理,测试组长,自己
开发提测,也是提交代码包(达到准入的要求)
拿到代码包部署到环境中
冒烟测试(重点)
冒烟测试(称为版本验证测试,提交测试)是指:对新版本的主要功能,基本功能进行测试,如果通过,那么冒烟测试通过,如果冒烟识失败,那么就把版本打回给开发进行修改,直到冒烟通过;
每一次开发提交新版本,测试都需要在测试环境中进行冒烟测试;
冒烟测试通过以后才能进入sit测试(系统集成测试);
sit测试(系统集成测试) 一般一个项目有三次,项目周期长可能4次,更多;
第一次sit测试是全量测试(所有编写的用例都要进行测试);
测试小结:包括用例数,bug数,新增用例数等 ;
开发修改bug
第二sit测试
冒烟测试 ,sit2测试,(回归测试)
回归测试:是系统维护阶段进行的验证测试
区别:测试的阶段不同
冒烟测试是在版本提交时进行的第一个测试,回归测试是在维护阶段的测试;
用例来源:
1、冒烟测试的用例
2、验证上一个版本提交的bug用例;
3、测试和bug相关联的模块的用例
4、你认为可疑的测试用例或者是测试场景
5、测试补充的测试用例或测试场景
第二次测试小结
有bug转给开发
开发修改bug;
提交第三次版本
sit3测试
冒烟测试
测试用例
达到准出要求;(0bug,用例100%用例执行)
输出测试报告 -----表示sit测试完成

uat 验收测试 (uat环境) --通过uat通过
系统版本打包(封板:是封装版本)

上线
上线成功 ,上线失败,版本回退,继续用之前的版本
回退的版本要重新让开发修改,测试 ,上线

上线前会准备线上测试数据,上线后我们在线上测试下新版本;
如果线上没问题,上线完成,
如果有bug,首先分析bug对项目的影响,影响大,退回版本;影响小,开发和测试分析并上报,建议下一个版本修改。

补充点:
1.1,接口测试是在UI界面未形成之前。(在开发输出自测报告)也就是在功能测试前或同时
1.2包括补充的用例
1.3 UAT测试在sit测试通过并输出测试报告
1.4封装版本(简称封板)上线
1.5线上也准备账号,在线上进行测试(也可能业务测试,测试人员测,如有问题,退回版本,继续用上一个版本,数据回滚。)
1.6性能测试在什么时候? (功能测试结束,才能做性能测试)
1.7自动化测试在什么时候?(在功能测试完成后,主要用来回归测试,节省时间)

(三)那就是我们现在的敏捷开发模式、迭代测试流程
缩短流程的讲解(一个需求一周开发,一周测试,在上线)
(四)工作中的流程,根据公司结构来讲
大型公司:(1)都是按照H模型规范操作
(2)有些公司,可能先上线在测试,在 补用例,
(3)有些公司是只写xmind的测试点,按照测试点进行测试,
(4)先简单测完上线,上线有问题在线上操作

注意注意点:
(1)讲解语速
(2)熟练
(3)讲解的主流程 (重点:环境部署,或搭建环境)
(4)封装版本上线

========================================================================
讲解要求:
1、第一人称
2、

=========================================================================
jenkins 自动化部署环境讲:
了解需求
编写计划
编写测试用例
评审用例
导入用例管理工具
搭建环境(开发环境,测试环境(我),生产环境)
开发提测(达到准出要求)
jenkins上构建,拉取项目包,测试
冒烟测试前一致和h模型
1、测试有bug就提交给开发,开发修改bug,提交代码
2、我们去jenkins构建下,拉取gitlab上的最新代码包
3、部署到测试环境中,就能测试最新的包,验证bug
4、直到用例100%,0bug,就输出报告
5、通知uat验收,验收通过
6、封装版本
7、等待上线
8、线上测试、线上通过
9、上线成功

案例:
流程:
先拿到需求------对需求进行评审------确定基线化文档-----深入了解需求-----编写测试计划------编写测试用例-----用例评审----导入用例管理工具-----搭建环境-----部署代码包------冒烟测试------sit系统集成测试------提交bug------开发修改bug-------进行sit2测试------冒烟----测试--------以此类推到0bug,用例100%执行,输出测试报告----进行验收测试-----验收测试通过------封装版本----上预发—测试-----上线----测试------测试通过----测试完成
案例:
简化版本:
我们先拿到需求,然后对需求进行评审,通过评审确定基线化文档;
测试经理编写测试计划,我们拿到计划后编写相应测试用例,所有人用例写完后进行用例评审,评审通过我们会将用例导入用例管理工具;
然后搭建环境,等待开发提测,提测我们首先进行冒烟测试,冒烟不通过打回修改,通过则进行sit系统集成测试,过程中发现提交bug给开发,开发修改bug这样完成一轮后,进行sit2测试,先冒烟测试,在对所有用例测试,这一轮还会增加测试用例因为bug修改后可能会影响相关模块的功能,所以要添加相应的测试用例;
以此类推进行多次sit测试直到0bug,以及用例100%执行,然后输出测试报告,通知产品进行验收测试,验收测试通过,封装版本,上预发,在预发再进行测试,没问题就可以上线,在正式版再测试,测试通过,测试完成。

详细版本:
产品拿到需求(SRS),软件需求规格说明书,
进行需求澄清会,(测试,开发,产品)产品主持会议,确定基线化需求文档
开发编写概要计划说明书和详细计划说明书,我们也会去参与概要设计说明书和详细设计说明书的评审
开发进行代码的编写,我们编写测试计划(测试经理,测试组长,我)
根据测试计划,分配工作
编写测试用例
用例评审(两种评审方式:1、组内评审 :测试,开发,产品,交叉评审:测试同事之间评审)
用例通过,导入到用例管理工具中(禅道)
用例分配给对应的负责
部署环境(测试环境(测试),开发环境,线上环境)
部署:运维,测试经理,测试组长,自己
开发提测,也是提交代码包(达到准入的要求),我们拿到代码包部署到环境中
冒烟测试(重点)
冒烟测试(称为版本验证测试,提交测试)是指:对新版本的主要功能,基本功能进行测试,如果通过,那么冒烟测试通过,如果冒烟识失败,那么就把版本打回给开发进行修改,直到冒烟通过;
每一次开发提交新版本,测试都需要在测试环境中进行冒烟测试;
冒烟测试通过以后才能进入sit测试(系统集成测试);
sit测试(系统集成测试) 一般一个项目有三次,项目周期长可能4次,更多;
第一次sit测试是全量测试(所有编写的用例都要进行测试);
测试小结:包括用例数,bug数,新增用例数等 ;
开发修改bug
第二sit测试
冒烟测试 ,sit2测试,(回归测试)
回归测试:是系统维护阶段进行的验证测试
区别:测试的阶段不同
冒烟测试是在版本提交时进行的第一个测试,回归测试是在维护阶段的测试;
以此类推进行sit3测试 sit4…
直到达到准出要求;
输出测试报告 -----表示sit测试完成
--------然后
进行uat 验收测试 (uat环境) --通过uat通过
系统版本打包(封板:是封装版本)
----------之后上预发环境再测试
没问题进行上线再测试
上线成功 ,上线失败,版本回退,继续用之前的版本
回退的版本要重新让开发修改,测试 ,上线

上线前会准备线上测试数据,上线后我们在线上测试下新版本;
如果线上没问题,上线完成,
如果有bug,首先分析bug对项目的影响,影响大,退回版本;影响小,开发和测试分析并上报,建议下一个版本修改。

======================================================================
案例1
工作流程是:拿到需求后,我们会对需求进行评审,通过评审确定需求文档,之后测试经理会根据需求文档来编写测试计划,安排各自的任务去写测试用例,在所有人测试用例写完之后进行用例评审,评审通过后将用例导入用例管理工具,
然后搭建环境,等待开发提测把写好的代码包发过来部署到测试环境。再进行冒烟测试,冒烟不通过则版本打回,冒烟通过则进行sit测试,过程中发现BUG提交给开发,开发修改完bug则进行sit2回归测试,先冒烟再测试。一直这样反复测试直到0BUG且测试用例全部执行完毕。然后输出测试报告,通知产品进行验收,验收通过后封装版本上传到预发环境中,在预发环境中再进行测试,没问题后进行上线,上线之后再测试,没问题后则测试完成

案例2:
我们拿到需求文档,我们的产品经理开始召开需求评审会议,对需求进行澄清,评审完之后会形成一个机械化文档(需求规格说明书),开发就会根据需求规格说明书去编写概要设计和详细设计说明书,我们测试人员还在深入了解需求规格说明书,并且评审开发写的概要和详细设计说明书,直到我们测试经理输出测试计划以及测试方案,我再根据测试经理安排的需求去编写测试用例并且写完之后会进行一个组内的评审,评审完用例之后会把定好的用例输入到我们的禅道中去,等开发那边写好代码之后,开发就会把代码包给到我,之后我会进行环境的部署,部署完成之后就会进行冒烟测试,若冒烟不通过,则版本打回;如果通过,则进入到sit1系统集成测试(全量测试),这个时候我就会把功能和接口全部测试完,有bug就提bug,开发把所有的bug修复完之后分配到我这边,我再进行回归测试,可能会有sit2,sit3,回归直到用例全部执行完毕并且没有bug,然后我就会uat任务给到产品经理,uat验收没问题,则发布的前一天会进行一个预发环境的上线,我们会在预发环境进行进一步的验收,无问题后则发布生产环境,最后输出测试报告。。。。。

案例3:
在拿到客户需求之后,我们产品经理会召集我们开一个SRS澄清会议,对需求进行分析,会议完成之后开发那边会编写概要设计和详要设计,我们测试经理会根据需求生成一个测试计划,我会根据测试计划编写好测试用例,同时对测试用例进行评审,再把评审好的测试用例导入到禅道里面去,然后会搭建好测试环境,开发提交代码包后,会对环境进行一个部署,首先会进行冒烟测试,不通过则版本打回,通过之后会进行第一轮的SIT测试,有bug会提bug,开发修改好bug之后,同时进行第二轮SIT测试也叫回归测试,,直到通过所有测试用例,并且没有bug为止,然后会进行uat验收测试,同时运维会上预发环境,通过之后正式上线,并且产出测试报告。

相关文章:

肖 sir_就业课__004项目流程(H模型)

项目流程: 一、面试提问(h模型) 1、你说下你们公司测试流程? 2、给你一个需求你会怎么做? 3、你讲下你的工作? 4、谈谈你是如何去测试? 答案:h模型 要求第一人称来写 讲解简化文字流程&#x…...

snipaste 截图工具——可以使图片悬浮在任何软件上,方便对比

一、下载 官网下载地址:Snipaste Downloads (需要梯子) CSDN下载地址:https://download.csdn.net/download/weixin_43042683/87671809 1. 下载 压缩包后,免安装,直接解压后既可以使用。 2. 点击Snipaste.…...

Docker 快速部署Springboot项目

编写Dockerfile文件 # Docker image for springboot file run # VERSION 0.0.1 # Author: # 基础镜像使用java FROM openjdk:8 # 作者 MAINTAINER laihx # VOLUME 指定了临时文件目录为/tmp。 # 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到…...

【LeetCode: 剑指 Offer II 112. 最长递增路径 | 递归 | DFS | 深度优先遍历 | 记忆化缓存表】

🍎作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎 🍎座右…...

hive 入门 一般用于正式环境 修改元数据(二)

安装配置可参考 https://blog.csdn.net/weixin_43205308/article/details/130020674 1、如果启动过derby,最小初始化过 在安装路径下删除 derby.log metastore_db rm -rf derby.log metastore_db此处省略安装mysql数据库 2、配置MySQL 登录mysql mysql -uroot …...

在RedHat系统上使用firewall-cmd命令可以将端口打开

在RedHat系统上使用firewall-cmd命令可以将端口打开,具体操作如下: 首先,检查当前系统使用的防火墙服务,比如firewalld或iptables,使用以下命令: systemctl status firewalld # 检查firewalld服务 system…...

分享(五):免费可用的多种类 API 大全集合整理

前言 搜罗了各大平台整理了一波免费可以用的 API ,有需要的收藏起来啦。 实名认证 运营商二要素 API :运营商校验此姓名、手机号码是否一致。 运营商三要素 API:运营商验证姓名、身份证号码、手机号码是否一致,返回验证结果称…...

8.1 假设验证的基本概念

学习目标: 要学习假设检验的基本概念,我会按照以下步骤进行: 了解假设检验的基本概念:假设检验是一种统计推断方法,用于判断某个假设是否成立。一般来说,假设检验包括原假设和备择假设两个假设&#xff0c…...

C语言基础

为了学习数据结构,整理一篇基础的C语言入门知识(仅供自身学习用) 条件运算符 语法:exp1 ? exp2 : exp3; exp1是条件表达式,如果结果为真,返回exp2 如果结果为假,返回exp3 if (a > b)max …...

Docker教程:如何将Helix QAC创建为一个容器并运行?

在这个Docker教程中,你将了解到如何将Helix QAC创建为一个容器化的镜像并运行。 Docker的基本定义是一个开源且流行的操作系统级虚拟化(通常称为“容器化”)技术,它是轻量级且可移植的,主要在Linux和Windows上运行。D…...

1676_MIT 6.828 xv6中的CPU alarm_资料翻译整理

全部学习汇总: GreyZhang/g_unix: some basic learning about unix operating system. (github.com) 我觉得看了几个MIT的课程之后让我觉得我的大学四年有点浪费时光,看起来MIT的课程的确是很有饱满度。 这里,再整理一份课程中的作业要求。 …...

记一次内存泄漏问题的排查

阶段一: 前段时间,突然发现服务在毫无征兆的情况下发生了重启。去看了一下容器退出的日志,发现内存利用率超过了100%,导致容器重启,进一步看了skyWalking,发现heap内存超了,当时只是简单的以为是…...

QML控件--Drawer

文章目录一、控件基本信息二、控件使用三、属性成员一、控件基本信息 Import Statement:import QtQuick.Controls 2.14 Since:Qt 5.7 Inherits:Popup 二、控件使用 Drawer:提供一个可以使用滑动手势打开和关闭的侧面板&#xff…...

PHY- PHY芯片概述

1 PHY概述 关于Internet Protocal的分层模型可以参考文章 :【Internet Protocal-OSI模型中的网络分层模型】,下面我们讲讲底层以太网控制器和收发器的知识。其主要是处理OSI模型中的物理层和链路层的事情。 在CAN/CANFD、FlexRay等总线中,有控制器Controller和收发器Transc…...

【C++】如何获取当前正在运行的函数的名称?

func、FUNCTION、__PRETTY_FUNCTION__的区别 常用获取函数名成的方法都有__func__、FUNCTION、PRETTY_FUNCTION。那么它们的区别是什么呢?   1) func、FUNCTION: 主要是获取函数的名称。   2) PRETTY_FUNCTION: 不仅能获取函数的名称&am…...

42.原型对象 prototype

目录 1 面向对象与面向过程 2 原型对象 prototype 3 在内置对象中添加方法 4 constructor 属性 5 实例对象原型 __proto__ 6 原型继承 7 原型链与instanceof 7.1 原型链 7.2 instanceof 8 案例-模态框 1 面向对象与面向过程 编程思想有 面向过程 与 面向…...

python 读写txt方法

​​​​​​​ 1. Python支持在程序中读写 txt文件。这里有两种方式: 方式一:使用 python内置函数,该函数将一个字符串的长度转换为与这个字符串长度相关的值。 例如:" readme"("r)。 prin…...

香橙派pi5下,debian,docker19.03.9版本runc容器逃逸

在香橙派pi5下,debian,docker19.03.9版本下,安装系统后,启动docker,显示一切正常。 当加入k8s集群以后,可以正常连接到集群,node状态显示为ready。看起来一切正常。不过过一会之后,香橙派节点内存飙升,然后挂掉。重连失败,需要重启后才能重连。且swapoff -a命令执行…...

Thinkphp6.0中间件.上

本节课我们来学习一下中间件的用法,定义一下中间件。 一.定义中间件 1. 中间件的主要用于拦截和过滤 HTTP 请求,并进行相应处理; 2. 这些请求的功能可以是 URL 重定向、权限验证等等; 3. 为了进一步了解中间件的用法&…...

十进制到八进制的转换

目录 十进制到八进制的转换 程序设计 程序分析 十进制到八进制的转换 【问题描述】对于输入的任意一个非负十进制整数n(0=<n<100000),打印输出与其等值的八进制数 【输入形式】非负十进制整数 【输出形式】相应十进制整数转换后的八进制正整数,若输入不符合要求,…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

Python实现prophet 理论及参数优化

文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候&#xff0c;写过一篇简单实现&#xff0c;后期随着对该模型的深入研究&#xff0c;本次记录涉及到prophet 的公式以及参数调优&#xff0c;从公式可以更直观…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

算法笔记2

1.字符串拼接最好用StringBuilder&#xff0c;不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

关于uniapp展示PDF的解决方案

在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项&#xff1a; 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库&#xff1a; npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...

如何应对敏捷转型中的团队阻力

应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中&#xff0c;明确沟通敏捷转型目的尤为关键&#xff0c;团队成员只有清晰理解转型背后的原因和利益&#xff0c;才能降低对变化的…...