【软件测试-学习笔记】

测试基础

软件开发周期

1)需求分析
确定软件要完成的功能,并对其进行可行性分析,在确保可行的情况下对每一个功能进行详细分析
2)软件设计
概要设计和详细设计,根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据库设计等。
3)软件编码阶段
将软件设计的结果转换成计算机可运行的程序代码。
4)软件测试
在软件整个开发过程中要经过严密的测试,以发现软件存在的问题并加以纠正。
5)软件运行和维护
软件发布之后如果出现问题,要对其进行维护(纠错性维护),或者根据用户反馈信息不断改进软件(改进性维护)

你怎么理解测试

我认为作为测试人员首先要熟悉待测产品,制定测试计划,进行测试设计,然后尽早地开展且不断地在测试过程中尽可能多地发现代码中的bug,与开发人员进行沟通确保问题的解决,从而保证产品的质量。
首先做的一个工作就是尽可能多地发现bug,在这个过程中主要先对代码进行一个review,即静态测试,然后设计全面的测试用例,看代码能否对其都进行正确处理,也包括对一些测试工具的学习和熟悉。
然后就是与客户或者开发人员进行沟通,与客户沟通可以更加明确客户的需求和软件的功能,与开发人员沟通可以共同完善软件的开发交付工作。
最后随着互联网的发展,可以着重于测试工具的开发,或者写一些自动化测试的脚本去优化测试过程(自动化测试)。

测试流程

V模型、W模型、H模型
可参考通用测试技术3——软件测试流程,软件测试过程模型(V模型,W模型,H模型,X模型),软件测试过程理念:
https://blog.csdn.net/qq_41955652/article/details/107933260

Bug的测评(严重性和优先级)

在这里插入图片描述

测试分类

黑盒测试和白盒测试

可参考黑盒测试和白盒测试:
https://blog.csdn.net/ruthywei/article/details/80484685
黑盒测试:
又称为功能性测试,将程序整体当作一个黑盒子,不关心内部结构,仅根据输入输出查看其是否能够满足软件的功能需求
方法:
1)边界值分析:很多错误都出现在输入和输出范围的边界上,针对边界情况设计测试用例,能检查出许多错误。等于边界,刚刚大于边界,刚刚小于边界,比如规定范围为1到10,就选取1和10,以及0.99,10.01
2)等价类划分:包括有效等价类(符合程序规格说明,有意义的输入数据集合)和无效等价类(没有意义的输入集合),比如规定输入的范围是1到10,那么有效的就是1到10之间的数,无效的有两个,就是小于1和大于10的
3)错误推测法:可以根据经验或者直觉确定程序中可能出错,容易出错的地方去专门设计测试用例
4)因果图法:如果程序规格说明中有涉及输入条件的一个组合情况,可以考虑用因果图法,找到因(输入,前提条件),果(输出),因和因之间关系,因和果之间关系,画出因果图
5)场景法:包括基本流和备用流,就是从一个流程开始,根据路径去确定一个过程,基本流就是正常进行的一个场景,备用流一般就是发生中断情况的处理
白盒测试:
结构测试或逻辑驱动测试,把程序看成一个透明的白盒子,对其内部逻辑结构进行测试
方法分类一:
1)静态测试:不运行代码,包括代码检查、静态结构分析、代码质量度量等,可以人工进行,充分发挥人的逻辑思维优势,也可借助软件工具(Fxcop)自动进行。
2)动态测试:需要执行代码,是用的最多的一种测试,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。
方法分类二:
逻辑覆盖法、程序插桩技术、基本路径法、符号测试、错误驱动测试
测试用例设计:(由弱到强)【逻辑覆盖法】
语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖

单元测试、集成测试、系统测试、回归测试和验收测试在这里插入图片描述手工测试和自动化测试(适用于回归测试、压力测试、并发测试)的优缺点

在这里插入图片描述
在这里插入图片描述

测试功能点与实例

测试分为功能测试和非功能测试,非功能测试又可以分为性能测试、压力测试、容量测试、健壮性测试、安全性测试、可靠性测试、恢复性测试、备份测试、协议测试、兼容性测试、可用性测试、配置测试、GUI测试

app测试

怎么测试网络协议

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

接口测试

可参考什么是接口测试?怎样做接口测试?:
https://blog.csdn.net/weixin_42273775/article/details/81868184
在这里插入图片描述

如何测试微信的视频通话功能?测试用例应该从哪几个方面设计?

功能测试:

1)是否能正常接通/挂断/切换语音通话
2)视频质量是否清晰可见,语音是否流畅内容可懂
3)音量是否可以正常调整大小
4)插拔耳机线/数据线,断网重连,前后台切换,来电话或短信,手机锁屏
(中断测试)
5)话筒/扬声器切换
6)前后置摄像头切换
7)视频框切换,比如占据屏幕大部分的是自己还是对方

性能测试:

1)点击视频通话按钮会等待多长时间,如果对方多久没有接通就自动挂断,接通之后有多长时间的延迟
2)一次通话能支持多少用户,微信平台能支持多少用户同时发起视频,频繁发起视频通话(app压力稳定性测试,Monkey工具)
3)网络情况对视频通话质量的影响,比如三大运营商不同网络制式测试,网络切换测试(WIFI/3G/4G),
4)设备条件的影响,比如手机内存不足
5)视频通话对cpu、内存、流量、电量的影响(app客户端性能测试,GT工具)

界面测试:

1)视频通话按钮的图标、颜色、字体等是否一目了然展示功能
2)等待接通时的界面、以及接通后的界面是否功能清晰可见,布局是否合理,界面是否好看,便于用户选择
安全性测试:
1)在视频通话时是否屏蔽恶意注入,禁止发送特殊可执行代码
2)视频画面还有语音内容是否会被记录

兼容性测试:

1)在多个平台,比如安卓手机,苹果手机,电脑,pad是否都可以正常通话
2)微信的不同版本是否兼容

一些测试用例设计实例(加★为高频)

微信聊天功能测试:
https://www.cnblogs.com/shallwebegin/p/11621998.html
https://testerhome.com/topics/10540
微信红包测试:
https://www.cnblogs.com/shallwebegin/p/11621996.html
(很全)微信朋友圈测试★:
https://www.cnblogs.com/shallwebegin/p/11622004.html
如何测试一个杯子(物品)★:
https://www.cnblogs.com/TankXiao/p/2381284.html
如何测试网页登录★:
https://www.nowcoder.com/ta/review-test/review?query=&asc=true&order=&page=59
测试自动售货机:
https://www.jianshu.com/p/75032fc9f6cd
测试电视机:
https://zhidao.baidu.com/question/2116599502574604227.html
人脸识别测试★:
https://blog.csdn.net/smell201611010513/article/details/97678452
车牌识别测试:
https://www.nowcoder.com/ta/review-test/review?tpid=35&tqid=31649&query=&asc=true&order=&page=60
车牌识别系统指标:正确性、可读性、识别率、识别速度、内存占用、鲁棒性
搜索框测试用例★:
https://blog.csdn.net/qq_40955824/article/details/89715166
车牌识别的具体实现:
https://blog.csdn.net/weixin_41695564/article/details/79712393

弱网测试相关

如何做弱网测试?(软硬件两种)

1)软件方式
利用模拟网络参数来配置弱网环境。也可以选择第三方,比如Charles、Network link Conditioner。在各类网络软件中,主要就是对带宽、丢包、延时等进行模拟弱网环境。此种方式成本低且实施起来容易操作,但不是非常接近弱网络环境
2)硬件方式
更接近弱网环境,但这种方式又会有些麻烦,都是通过「树莓派」网维协助搭建!如果出现有些无法模拟的情况,只能靠人工移动到电梯、地铁等信号比较弱的地方。

弱网测试的思路(了解):

1)弱网功能测试
2G/3G/4G、高延时、高丢包的异常网络下的健壮性。关注网页的响应时间、页面呈现是否完整一致等。弱网络环境需要借助工具来模拟,在windows环境下可以使用fiddler和network emulator for windows toolkit
2)无网状态测试
断网功能测试、本地数据存储
3)网络切换测试
Wifi----4G/3G/2G-----无网多状态切换。主要关注页面的显示与交互,是否会有页面的crash以及显示的错乱、session是否一致等。
4)用户体验关注
a)页面响应时间是否可以接受,关注包括热启动、冷启动时间、页面切换、前后台切换、首字时间,首屏时间等;
b)页面呈现是否完成一致;
c)超时文案是否符合定义,异常信息是否显示正常。是否有超时重连;
d)安全角度:是否会发生dns劫持、登陆ip更换频繁、单点登陆异常等;
e)大流量事件风险:是否会在弱网下进行更新apk包、下载文件等大流量动作。

可参考牛客网测试面试问题合集:
https://www.nowcoder.com/ta/review-test?query=&asc=true&order=&tagQuery=&page=3

https://mp.weixin.qq.com/s/nocztb7XVP_hkItxDE6_EQ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值