肖sir__软件测试理论讲解(1.1)

软件测试理论讲解

一、课前注意点:
1、上课时间:上午9:00-12:00 下午:2:00-6:00 网上7:00-9:00
2、休息时间:上六休一(固定周日休息)
3、请假问题:互相尊重,发个信息 ,
4、微信号:15949613302 手机号:16607005874
5、同学之间加下微信,留下联系方式
6、座位:建议一起做,遇到问题可以互相学习(方便学习)
7、前三天明天早上花20分钟
8、笔记:每一天的知识整理,发在有道云、或csdn 或博客园等
9、晚上自习:复习和练习当天的知识
10、班级:推出班长(一个月组织户外团建,提问)

二、课程内容
(一)测试思维练习
比如:杯子
(1)需求测试:制作杯子的使用说明书
需求:就是一测试文档,客户实现一个功能呢,业务编写做一个什么样的杯子的需求,需求做的文本内容
肖sir__软件测试理论讲解(1.1)_第1张图片

界面测试:外观
外界界面测试,也成为ui测试
比如:模块布局、整风格,
像素、图片大小、字体、颜色、
(2)功能测试
功能测试
计算机:功能测试软件的各个功能进行验证,验证是否达到客户的需求
微信:发红包、发朋友、聊天、
安全性测试:制作材料是否对人体有伤害
软件安全测试包括:病毒、木马、防火墙、数据泄露、程序的程序,权限,等级

可靠性测试:杯子从高处落下的损坏程度

定义;可靠性测试就是为了评估在规定的寿命范围内,在预期的所有环环境下,保持共可靠性及进行的活动,来通过各种环境模拟比如高温、低温、高湿的环境,加速反映产品在环境等的状况来验证差评的可靠寿命
场景:一套空调32oc,在零下几十度的环境,使用寿命的时间

可移植性测试:在不同地方不同环境是否正常使用
计算机:软件是否可以被移植到指定的硬件或软件平台上
场景:计算机结构不同:8g、i3 处理器;另一台设备:16g、i5 处理器、设备 ;
兼容性测试:除了装水外是否支持装其它液体
定义:对所涉及的程序和硬件、软件之间的兼容
平台兼容:win7、 wein10、wen13
浏览器兼容:谷歌、ie(8,9,10) ,360 、火狐
分辨率的
尺寸

易用性测试:使用是是否烫手等
定义:方便使用,可以理解为易学行,易操作性
计算机:复制、黏贴、剪贴、删除、回车、容错性
尼尔森十大定律;

压力测试:(破坏性测试)
压力测试是性能测试之一。
计算机:超出软件要求范围,超出临界点测试系统

负载测试:
负载测试也是性能测试的之一,
计算机中:不断的增加压力,查看系统系统情况
面试题:
1、你说下水杯的测试点?
2、给你一个二维码你会怎么?
3、淘宝购物车测试点?
4、微信发朋友圈点赞?
5、微信发红包?
6、给你一只 笔?
7、你说下电梯的测试点?

================================================
IT常见基本术语:
硬件: 计算机的硬件是计算机的各种设备的总称:硬件分为5个部分:
(1)运算器 cpu (2)控制器 主板 (3)存储器 硬盘 (4)输入设备 键盘、鼠标 (5)输出设备 显示屏

(2) 软件:当电脑启动时的应用程序,应用软件(钉钉、qq、微信、有道云全是软件),系统软件window7、win11 、win10
软件和硬件相互依存;

(3)pc机个人计算机(超级计算机、小型机、大型机、工作站)
(4)物理机,
物理机时相对于虚拟机而言的实体计算机的称呼;
物理提供给虚拟机环境,有时也称为宿主,寄主

(5)虚拟机;
虚拟机时相对物理机而言比如liunx
在这里插入图片描述

(6)OS 操作系统,
常见的操作系统:windows10、windows11、windows7
macos、ios 、andriod等

(7)dos命令
dos打开方式:
win+r 打开输入框输入vms 全敲回车===dir
dir 查看目录和问文档先的文件
cd
ping 查看网络
ipconfig 查看当前本地ip
cls清屏

(8)共享
网络共i想:信息交流,资源共享
(9)备份
计算机的数据备份,存储下来

(10)文件与文件夹,
目录与路径;
案例:路径 :E:\dcs\安装包 目录: 安装包
肖sir__软件测试理论讲解(1.1)_第2张图片

(11)bs架构和cs架构
bs架构 :浏览器-----服务器
cs架构: 客户端----服务器
b:broeser 浏览器
s:server 服务器
c:client 客户端
bs的应用:csdn、博库园、百度、论坛、豆瓣
cs的应用:微信、qq、抖音
区别:
(1)bs不需要更新,下载,直接通过浏览输入网址就可以进行访问,cs需要下载客户端才能使用,需要定期更新;
(2)bs架构对服务器性能高,cs架构能对服务器分摊部分压力
(3)bs不会占用存储内存,cs会占用存储内存
优缺点:
cs 优点 手机携带方便,操作简单,上次下载相对较快,安全性高;
cs 缺点 需要安装,升级,服务器相对i叫难维护
bs 优点,不需要安装,直接可以访问网页,服务器好维护,信息量比较大,资料多
bs 缺点 安全性高,信息容易泄露,容易病毒

(12)单机软件、共享软件、开源软件 、商业软件
a、单机,下载安装以后不需要网络,可以应用的软件,不收费
b、共享软件
一般功能不收费,但是部分功能时收费
c、开源软件
免费试用软件
d、商业软件
都需要收费,把软件当作一个商品去交易

(13)
项目与项目需求,
客户与客户需求,
(14)
项目角色
ceo 首席执行
cto 首席技术官
pm 项目经理
职责:管理项目,负责项目的进展了项目的安排,开发一个软件直到系统正常上线
产品经理:(业务、需求,产品)
职责:负责公司的产品,了解客户的需求,把客户的需求整理提供给开发和测试
开发经理:
职责:管理开发人员,安排开发任务
开发人员:(程序员)
职责:负责编写代码
开发分为两种:前端开发,后端开发
前端开发:页面布局,前端代码html
后端开发: 负责代码逻辑 。 比如python、java
测试经理:(测试主管、测试组长)
职责:管理测试人员,安排测试任务、跟进测试进度,保证测试质量
测试人员:
职责:分析需求,编写测试用例,环境搭建、提bug给开发,输出测试报告
运维:(cmo)
职责:搭建环境、部署项目
dba:数据管理员

==============================================
面试题:
1、你们公司规模多大?你们测试组有多少人?开发和测试比例?
我公司大概100来,测试组20个人,开发和测试比例(6:1)
2、前端开发和后端比例?(1:6)
3、你们项目组有哪些人?
测试,开发(前后端开发)、产品
4、你们公司的环境谁搭建的?运维的工资?
运维,负责搭建环境和维护环境

==============================================
行业基本:
肖sir__软件测试理论讲解(1.1)_第3张图片

为什么要测试?
1.软件的非正常运行或其自身的缺陷(BUG)会 引发很多问题。(软件本身就会引起问题)
2.软件是由代码和文档组成的,而这些都是由 “人”来设计和编写的,人都有可能犯错。(人写的就难免出错)
3.环境也会影响软件,以致出现软件“失效”现 象。(环境导致出问题)
4. 软件测试活动只是关键的质量保证活动之一。(一种质量保证测试手段)

二、什么是测试?
制造业的定义: “以检验产品是否满足需求为目标”
软件行业的定义,有多种说法: a:验证软件的正确性; b:发现软件中的缺陷

三、软件生命周期概念?
a、软件生命周期别称:软件生存周期或软件开发生命周期
指的是软件从产生到报废的整个过程,是一种时间的概念。
例:举一个生活的例子:一部手机的寿命··
b、通常软件生命周期包括哪些阶段?
1)客户问题引入或定义
2)可行性分析(涉及经济(商业论证),政治,法律,技术等)
3)项目招投标
4)项目立项
5)需求分析
6)开发阶段(设计,编码,测试)
7)维护
c、典型的软件生命周期模型有哪些?
• --瀑布模型(waterfall) (淘汰)
• --V模型 (重点)
• --W模型
• --H模型 (重点)
• --X模型
• --敏捷开发模型 (了解)
• --迭代开发模型
• --增量开发模型

四、详解模型
(1)v模型(重点)
单元测试(简写:UT)
集成测试(简写:IT)
系统测试(简写:ST)
验收测试(简写:UAT)
集成测试和系统测试合并为:sit测试(系统集成测试)、技术型测试

(1)软件需求规格说明书(简称:SRS):
是一个文档
项目所有需求的说明
(2)概要设计:简称HLD 是一个文档
内容:架构设计,说明架构数据库类型,架构描述、设计、模块名的名称
理解:要盖一栋房子,文档时记录房子大概的设计规格
(3)详细设计:简称lld 也是一个文档
内容时针对具体功能实现文档,模块功能的具体实现,具体的设计,具体描述
理解:房子装修
详细讲解四个阶段:
第一个阶段:单元测试
单元测试:是指验证软件单元是否满足详细文档的规格,能正常执行,主要是对代码进行测试
单元测试是最小的测试单位
在工作中,单元测试一般是开发自测,如果需要测试进行单元测试,对测试的技术要求非常高,必须懂开发语言
理解:课本的1个单元考试

第二个阶段:集成测试
集成测试是指多个单元组合验证软件是否满足概要设计文档的规格,能正常执行
主要测试是模块与模块之间的数据交互
理解:课本(1-6单元的期中考试,2个单元以上就集成)

第三个阶段:系统测试
系统测试是指对整个系统进行测试,验证系统能正常运行,主要测试是一个整体业务流程。
理解:课本(1-10单元考试,所有单元测试,综合考试)

第四个阶段:验收测试
验收测试 分为alpha 测试和bate测试
alpha (α)测试(内部验收)和bate(β)测试区别:(外部验收)
1、alpha (α)测试 测试地点:公司 ,(β)测试测试地点在客户方
2、alpha (α)测试 测试都是内部技术人员测试,测试,开发都在现场,可以及时处理;β)测试都是在客户方的员工测试,发现问题在反馈给开发,
3、alpha (α)测试 测试时间短,测试人员集中,(β)测试 测试时间长,测试人员不集中

=============================================
H模型
肖sir__软件测试理论讲解(1.1)_第4张图片

1、产品 给我需求(srs软件测试需求规格说明书)
2、产品召开一个需求澄清会议(主要是对需求的实现功能阐述)
参加人: 产品、开发、测试
3、修改需求,确定需求,
4、测试和开发拿到需求;
5、测试负责人开始编写测试计划(也是一个文档)
(测试计划内容包含:
测试目的、测试北京、测试范围、测试约束(包含测试准出,测试准入)、环境与资源 、测试任务与进度、风险及风险管理、测试交付文档
测试准入:
测试计划写好、测试用例写好,评审通过,搭建好环境
测试准出:用例执行率100%;0bug、输出测试报告)
6、根据测试计划,安排的任务,熟悉需求、分析需求,
7、编写测试用例(excel用例)、评审用例(组内评审,交叉评审),直到评审通过
a、组内评审:开发、测试、产品一起对用例评审,评审通过,(测试发起)
b、交叉评审:测试同事之间评审
8、将用例导入到用例管理工具中(禅道)
9、搭建环境(运维,自己,测试经理搭建)
a、三种环境:生产环境、开发环境,测试环境
b、测试环境有几套(sit环境) sit1 、sit2、sit3
10、开发提交版本包(到达准出要求) ,也叫提测、转测
11、测试拿到包,将包部署到测试环境
12、进行冒烟测试:
冒烟测试定义:是对新版本的主要功能,基本功能进行测试;
13、如果冒烟测试通过,则执行sit系统集成测试;
如果冒烟测试不通过,则将版本打回开发,重新修改,在提交版本,从新在冒烟测试,直到通过
14、第一次sit系统集成测试(全量测试:全部的用例都执行),执行测试后有bug就提交给开发,开发修改,在讲修改好代码在提交,
15、进行第二轮sit测试(回归测试),
一般:情况会进行3轮或4轮sit测试;
回归测试:定义系统维护阶段,对原有的用例,bug进行再次验证,我们称为i回归测试
第二轮sit测试用例来源:
(1)冒烟测试用例
(2)验证上一次出现bug的用例
(3)测试与bug相关联的模块用例
(4)测试补充的测试用例或场景
(5)你认为可疑的测试用例或场景

16、有bug提交给开发,开发修改bug,在提测
17、进行第三次sit系统测试(以此类推)
冒烟测试,开始测试,
第三轮sit测试用例来源:
(1)冒烟测试用例
(2)验证上一次出现bug的用例
(3)测试与bug相关联的模块用例
(4)测试补充的测试用例或场景
(5)你认为可疑的测试用例或场景

18、测试达到准出:用例100%执行、0bug
19、输出测试报告:=====》表示sit测试完成
测试报告包含哪些内容:
测试目的、测试背景、测试概要、测试环境、测试概况、测试实际时间、bug清单、用例清单、测试结轮、测试风险

==================
20、通知uat验收测试=====》uat验收通过
21、封装版本(封板)
22、准备上线
23、准备线上数据、
24、上线以后在进行测试,测试没有问题(上线测试后有问题,根据问题处理,影响大,回退版本,下一次上线,如果影响小,备注说明情况,下一个版本改)
25、上线成功

简写:
参加需求会议=拿到需求编写测试计划=编写测试用例=用例评审=将用例导入用例管理工具=搭建环境=开发提交代码包(达到准入要求)=部署环境冒烟测试=通过sit1系统集成测试=全量测试=发现bug提交给开发=开发修改开发提交第二次版本包=冒烟测试=sit2系统集成测试以此类推=达到准出要求(用例100%执行,0bug)=输出测试报告(sit测试完成)====通知uta验收测试=验收通过=版本封装=上线=线上测试=上线成功

==========================================
敏捷开发模型:
敏捷开发这是一种新的模型,前面的几种都是属于传统型。它能适应快速需求变化,交付周期短,轻量级的开发模式。

==========================================
增量开发模型:项目被划分为一系列的增量,每一个增量都交付整个项目需求中的一部分功能。需求按优先级进行划分增量的交付。

==========================================
迭代开发模型:
迭代项目被分为大量迭代过程,一次迭代就是一个完整的开发循环,是一个可以发布的可执行的产品,属于软件开发周期中最终产品的一个子集。

=====================
测试的基本原则·?
1.测试的标准是用户需求
2测试不仅仅是单纯的软件本身的测试
3.软件外在没有失效不代表软件系统是可用的
4.软件的完美度没有完全正确的,测试只能帮助软件更加完美,更加正确。
5.穷尽测试是不可能的(有些条件组合非常多,穷尽测试是不可能的)
6.测试应该尽早介入(早期引入的问题占到整个问题数目的50%以上)
7.二八原则(80%的缺陷或错误会集中出现在20%的区域中)
8.杀虫剂效应
(也就是说要不断更新用例,因为反复的执行相同的测试用例将会发现新缺陷的能力几乎为零)
9.测试活动依赖测试对象(测试的关注点不一样,有的更多关注安全和性能的测试)
10.尽量选择第三方测试(避免自己测试自己开发的程序)

你可能感兴趣的:(软件测试,软件测试)