测试基础理论概要(面试出现频率高)

*本文是自己在学习过程中的小总结,排版也不太好,仅做参考。

*测试术语英文缩写

SRS:需求分析文档;
HLD:概要设计文档;
LLD:详细设计文档;
BD:基本设计;
DD:详细设计;
FD:结构设计;

软件质量模型的6大特性

功能性
可靠性
易用性
效率性
可维护性
可移植性
口诀:“功能靠用小护翼”
怎么测试一个东西可以参照这个。

测试的分类

按软件开发阶段分:单元测试,集成测试,系统测试,验收测试,回归测试
按测试执行方分:Alpha(α)测试,beta(β)测试,第三方测试
按测试执行方法分:静态测试,动态测试
按是否查看代码分:黑盒测试,白盒测试,灰盒测试
按是否手工执行分:手工测试,自动化测试
按测试对象分:功能测试,性能测试,安全测试,兼容测试,易用性测试(用户体验测试),文档测试,业务测试,界面测试,安装测试,异常测试
按测试地域分:本地化测试,国际化测试

常见软件测试模型

瀑布模型
V模型
在这里插入图片描述
W模型
在这里插入图片描述
X模型
在这里插入图片描述
H模型
在这里插入图片描述
(图片出处:https://blog.csdn.net/u014745194/article/details/79917853)

黑盒测试和白盒测试*

黑盒:
功能测试。着眼于程序外部结构,不考虑内部逻辑结构。对软件界面和功能进行测试。
常用黑盒测试方法:
等价类划分法
边界值分析法
正交实验设计法
因果图法
场景法
错误推测法
功能图分析法
判定表驱动分析

白盒:
针对被测单元内部是如何进行工作的测试,检查程序内部逻辑结构,对所有逻辑路径进行测试。
常见白盒测试方法:
静态测试:不用运行程序的测试
包括代码分析,静态结构分析,代码质量度量,文档测试等。

动态测试:通过运行程序找到问题
包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。
如:逻辑覆盖法,程序插桩技术,基本路径法,符号测试,错误驱动测试

逻辑覆盖
语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,条件组合覆盖,路径覆盖
发现错误的能力:弱 -> 强 :
1.语句覆盖每条语句至少执行一次。
2.判定覆盖每个判定的每个分支至少执行一次。
3.条件覆盖每个判定的每个条件应取到各种可能的值。
4.判定/条件覆盖同时满足判定覆盖条件覆盖。
5.条件组合覆盖每个判定中各条件的每一种组合至少出现一次。
6.路径覆盖使程序中每一条可能的路径至少执行一次。

测试的相关流程

需求测试->概要设计测试->详细设计测试->单元测试->集成测试->系统测试->验收测试

测试项目具体工作是什么

参考回答:
写测试计划
搭建测试环境
撰写测试用例
执行测试用例
测试,并提交BUG表单
写测试报告
跟踪bug修改情况
执行自动化测试,编写脚本,执行,分析,报告
进行性能测试,压力测试等其他测试,执行,分析,调优,报告

软件质量的六个特征

功能特征:与一组功能及其指定性质有关的一组属性,这里的功能是满足明确或隐含的需求的那些功能。
可靠特征:在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。
易用特征:由一组规定或潜在的用户为使用软件所需作的努力和所作的评价有关的一组属性。
效率特征:与在规定条件下软件的性能水平与所使用资源量之间关系有关的一组属性。
可维护特征:与进行指定的修改所需的努力有关的一组属性。
可移植特征:与软件从一个环境转移到另一个环境的能力有关的一组属性。

app性能测试的指标

内存
空闲状态指打开应用后,点击home键让应用后台运行,此时应用处于的状态叫做空闲;
中等规格和满规格指对应用的操作时间的间隔长短不一,中等规格时间较长,满规格时间较短。
内存测试中存在很多测试子项,清单如下:
空闲状态下的应用内存消耗;
中等规格状态下的应用内存消耗;
满规格状态下的应用内存消耗;
应用内存峰值;
应用内存泄露;
应用是否常驻内存;
压力测试后的内存使用。
cpu
流量
可能还会关注网速、弱网
应用首次启动流量提示;
应用后台连续运行2小时的流量值;
应用高负荷运行的流量峰值。
电量
测试手机安装目标APK前后待机功耗无明显差异;
常见使用场景中能够正常进入待机,待机电流在正常范围内;
长时间连续使用应用无异常耗电现象。
启动速度
第一类:首次启动–应用首次启动所花费的时间;
第二类:非首次启动–应用非首次启动所花费的时间;
第三类:应用界面切换–应用界面内切换所花费的时间。
滑动速度,界面切换速度
与服务器交互的网络速度
bug类型
• 代码错误
• 界面优化
• 设计缺陷
• 配置相关
• 安装部署
• 安全相关
• 性能问题
• 标准规范
• 测试脚本
• 其他

web测试和app测试的不同点

系统架构方面
web项目,一般都是b/s架构,基于浏览器的
app项目,则是c/s的,必须要有客户端,用户需要安装客户端。
web测试只要更新了服务器端,客户端就会同步会更新。App项目则需要客户端和服务器都更新。
性能方面:
web页面主要会关注响应时间
而app则还需要关心流量、电量、CPU、GPU、Memory这些。
它们服务端的性能没区别,都是一台服务器。
兼容方面
web是基于浏览器的,所以更倾向于浏览器和电脑硬件,电脑系统的方向的兼容
app测试则要看分辨率,屏幕尺寸,还要看设备系统。
web测试是基于浏览器的所以不必考虑安装卸载。
而app是客户端的,则必须测试安装、更新、卸载。除了常规的安装、更新、卸载还要考虑到异常场景。包括安装时的中断、弱网、安装后删除安装文件 。
此外APP还有一些专项测试:如网络、适配性。

怎么测试网络协议

协议测试包括四种类型的测试
一致性测试:检测协议实现本身与协议规范的符合程度
互操作性测试:基于某一协议检测不同协议实现间互操作互通信的能力
性能测试:检测协议实现的性能指标,比如数据传输速度,连接时间,执行速度,吞吐量,并发度,
健壮性测试:检测协议是现在各种恶劣环境下运行的能力,比如注入干扰报文,通信故障,信道被切断

α测试,β测试,λ测试

α是第一个阶段,一般只供内部测试使用;
在受控的环境中进行,由用户在开发者的场所进行,并且在开发者对用户的指导下进行测试,开发者负责记录发现的错误和使用中遇到的问题
β是第二个阶段,已经消除了软件中大部分的不完善之处,但仍有可能还存在缺陷和漏洞,一般只提供给特定的用户群来测试使用;
在开发者不能控制的环境中的真实应用,由软件的最终用户们在一个或多个客户场所下进行,由用户记录在测试中遇到的一系列问题,并定期报给开发者。
λ是第三个阶段,此时产品已经相当成熟,只需在个别地方再做进一步的优化处理即可上市发行

可以从哪些方面去进行测试

功能性
界面
性能
兼容性
安全性
易用性
可移植性
健壮性
可靠性

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值