测试基础的内容

1.测试基础

1.0 软件的生命周期

1.0.1 计划

项目经理完成

1.0.2 需求分析

加法功能:十进制加法,有两个输入参数(参数1、参数2),有1个结果输出(结果); 点击加法按钮能获取参数1和参数2的和,和在结果输出中显示。

需要包含错误处理

界面:

1.0.3 设计

考虑加法按钮如何实现:结果中显示两个参数的和

即:主要对加法按钮的处理,点击按钮后,结果文本框的取值=参数1文本框的取值+参数2文本框的取值

1.0.4 维护

1.0.6.1 升级

1.0.6.2 新的需求

新增减法,乘法,除法等额外功能

1.1 软件开发过程模型(了解)

1.1.1 瀑布模型

1.1.1.1 定义

线性模型的一种,在所有的模型中占有重要地位,是其他模型的一个基础

每个阶段执行一次,按照线性模型的顺序进行软件开发

测试的切入点:

测试阶段处于软件实现后,必须在代码完成后留出足够多的时间给测试活动,否则导致测试不充分,很多问题在项目后期才暴露、

1.1.1.2 优缺点

瀑布模型
地位:这是一种经典模型,提供了软件开发的基本框架。
优点:
1)各阶段划分清晰
2)强调计划与需求分析
3)适合需求稳定的产品开发
缺点:
1)单一流程,不可逆
2)风险显露得晚,纠正机会少
3)测试只是其中一个阶段,缺乏全过程测试思想
4)各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量。
5)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险。
6)早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。

1.1.2 快速原型模型

1.1.2.1 原型阶段

快速分析
需求说明
构造原型
原型
运行原型
评价原型
修改意见

1.1.2.2 步骤

step1

建造一个快速原型,实现用户和系统的交互,用户对原型进行评价,进一步细化待开发软件的需求,通过逐步调整原型使其满足用户的要求,开发人员可以确定用户真正的需求

step 2

在第一步的基础上开发出用户满意的软件产品

1.1.2.3 优缺点

优点

克服瀑布模型的缺点,更好地满足用户的需求并减少由于软件需求不明确带来的项目开发风险。适合预先不能确切定义需求的软件系统的开发。
缺点:

不适合大型系统的开发(适合开发小型的、灵活性高的系统)前提要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新。

1.1.3 螺旋模型

1.1.3.1 模型

本质上,将线性模型实现多遍

比较浪费时间,在实际的开发中,使用比较少

1.1.3.2 优缺点

优点
螺旋模型很大程度上是一-种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评
估。

缺点
采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必
造成重大损失。过多的迭代次数会增加开发成本,延迟提交时间。

1.1.4 三种开发模型的区别

需求项目规模模型
清晰瀑布模型
不清晰中小型快速原型
不清晰螺旋模型

1.2 测试模型

1.2.1 V模型

1、优点:包含了底层测试(单元测试)和高层测试(系统测试);

      清楚的标识了开发和测试的各个阶段;

      自上而下逐步求精,每个阶段分工明确,便于整体项目的把控。
2、缺点:自上而下的顺序导致了,测试工作在编码之后,就导致错误不能及时的进行修改;

       实际工作中,需求经常变化,导致v模型步骤,反复执行,返工量很大,灵活度较低。
 改良:每个步骤都可以进行小的迭代工作。

1.2.2 w模型

优点:

    开发伴随着整个开发周期,需求和设计同样要测试;
    更早的介入测试,可以发现初期的缺陷,修复成本低;
    分阶段工作,方便项目整体管理。
缺点:

    开发和测试依然是线性的关系,需求的变更和调整,依然不方便;
    如果没有文档,根本无法执行w模型;对于项目组成员的技术要求更高!
    管理成本很高
    沟通成本很高

1.2.3 H模型

H模型的优点:
  >开发的H模型揭示了软件测试除测试执行外,还有很多工作;
  >软件测试完全独立,贯穿整个生命周期,且与其他流程并发进行;
  >软件测试活动可以尽早准备、尽早执行,具有很强的灵活性;
  >软件测试可以根据被测物的不同而分层次、分阶段、分次序的执行,同时也是可以被迭代的。

H模型的缺点:
  >管理型要求高:由于模型很灵活,必须要定义清晰的规则和管理制度,否则测试过程将非常难以管理和控制;
  >技能要求高:H模型要求能够很好的定义每个迭代的规模,不能太大也不能太小;
  >测试就绪点分析困难:测试很多时候,你并不知道测试准备到什么时候是合适的,就绪点在哪里,就绪点的标准是什么,这就对后续的测试执行的启动带来很大困难;
  >对于整个项目组的人员要求非常高:在很好的规范制度下,大家都能高效的工作,否则容易混乱。例如:你分了一个小的迭代,但是因为人员技能不足,使得无法有效完成,那么整个项目就会受到很大的干扰。

1.2.4 对比总结

  v模型适用于中小企业,

  w模型适用于中大型企业(因为人员要求高),

  h模型人员要求非常高,很少有公司使用。

2 测试的分类

2.1 功能测试

写测试用例

2.2 自动化测试

python

java

2.3接口测试

postman

2.4性能测试

例如一亿人同时访问

3 计算机基础

3.1 dos命令

windowslinux
dir将当前目录的内容展示ls
ipconfig查看网卡ifconfig
cd打开当前路径cd
md创建新目录
echoecho_data>文件
del删除文件
copycopy 文件原路径 文件新路径
move
rm -rf *强制删除(严禁使用)

4 前端知识

4.1 web 3大核心

html 标签--堆盒子

css 将页面美化

javascrips 行为动作

5 后端知识

5.1 cs/bs

5.1.1 cs

定义:client-server 客户端-服务端

优点:客户端pc 能够处理一部分功能,可以让客户端处理完成之后,再提交给后端,响应速度快

操作界面很美观,安全性

缺点:1.不方便安装;2.兼容性比较差,不同的系统需要不同的版本;3.开发和维护成本较高

5.1.2 bs

定义:browser-server 浏览器-服务器

优点:

1.客户端0维护,只要有浏览器和网络,就可以进行访问;

2.增加功能简单,只需要增加网页就可以完成;

3.不需要用户进行同步更新;

4.开发简单

缺点:1.跨浏览器兼容;2.响应速度会慢一些;3.速度和安全性要花费巨大的设计成本;4.功能弱化

5.1.3 cs与bs的区别

csbs
效率cs效率比较高,一部分数据已经加载到系统中每次都需要加载最新的数据
版本升级删除旧版本,再更新新版本无缝升级
安全cs更安全,下载,安装,注册,登录浏览器
开发成本不同的系统需要不同的开发人员,成本高成本相对较低

5.2 文件格式

5.2.1 xml

案例

5.2.2 json

案例

6 软件测试分类

6.1 按照测试阶段来细分

单元测试:模块测试,是最小的程序模块

集成测试:在单元测试的基础上,将各个模块合在一起测试

系统测试:将整个的软件系统 ,看做一个整体,进行测试

验收测试:

α测试(内测版本),在软件开发者内部交流,或者忠实的粉丝之间发布,一般情况下都是BUG比较多 的,普通用户不建议安装

β测试(对所有的用户开放的测试版本),bug会相对少一些,免费发布

γ测试(正式版本的候选版本)

6.2按照是否覆盖源码

6.2.1黑盒测试

只关注业务逻辑,输入内容和输出内容

6.2.2白盒测试

a = 1
b = 1
sum = a+b
print(sum)

研究的是源码,观察程序结构

6.2.3灰盒测试

介于二者之间,灰盒测试用在集成测试阶段,不仅关注输入和输出,也关注源码

测试关注点:测试输入、测试输出、代码逻辑

6.3按照是否运行划分

6.3.1静态测试

定义:不运行被测程序,仅仅通过分析和检查源码中的语法,结构,过程和接口,来检查程序的正确性

测试对象:源码==>白盒测试

sql脚本

文档:

需求文档、

各种设计文档,比如数据库设计文档

6.3.2动态测试

定义:运行被测程序,检查运行的结果是否和预期结果保持一致,分析运行效率,正确性和健壮性

测试对象:源码==>运行

系统

6.4按照是否自动化来进行

6.4.1手工测试

定义:手动执行测试用例的过程

缺点:效率低,重复工作高

6.4.2自动化测试

利用工具或者代码去帮助执行相关测试用例

web自动化

app自动化

6.5 其他

6.5.1冒烟测试(重点)

针对当前的系统进行的最基本功能的测试,保证基本的功能和流程能够完成。

6.5.2回归测试(重点)

定义:开发修改了旧代码之后,测试重新进行测试确认本次代码修改有没有引入新的错误或者导致其他代码出现错误。

Bug回归

旧功能回归

回归原则:需要伦次取决于项目的复杂度和规模,N个版本需要进行(N-1)次回归测试

缺点:重复性工作大,效率低

解决方法:使用自动回归测试(自动化测试)

6.5.3随机测试

定义:根据测试者的经验对软件进行性能和功能的抽查

注重点:对重复功能进行复测;对没有覆盖到的模块进行测试

6.5.4探索性测试

同时设计测试和执行测试,是一种测试思维技术

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值