软件测试概率性问题

软件测试中常见的一个问题就是概率性问题,概率性问题无论对软件测试人员还是对开发人员而言都是比较头疼的一个问题。这种概率性问题在测试中该如何处理呢?

首先,概率性问题也是问题,这种我们千万不能一笑而过,在这种情况下测试人员要将这些问题记录下来,多做测试,看能否找出问题产生的规律

其次,我们要对所出现的问题进行评估,看这种问题的严重性,如果是比较轻微的问题,对用户使用没什么影响,也不会影响到软件其他方面正常工作,那在这种情况下如果开发人员很随手就可修改的话,那就进行修改;如果修该起来耗时耗力的话,则可征得有关人员同意后进行keep.

再者,对于比较严重的概率性问题,如死机、系统崩溃等情况,在记录下问题的同时要及时通知相关开发人员,测试人员和开发人员商量解决如何再现并最终解决问题。对于这样的问题一定不能放过,记得以前在给佳能做传真机测试的时候,遇到一个出现系统自动重起的问题,结果为了抓这个问题,几个测试人员专门盯着这个问题反复的测试,为了这个问题整整测了一个星期,好在问题最后得以解决。

第四,有些问题用语言文字描述可能很难描述清楚,对于这样的问题,测试人员再进行描述的时候,有条件的话可以抓图和提供测试log.当然,如果有再现的话,最好通知开发人员,让开发人员确认问题的现象,毕竟百闻不如一见!

第五,概率性问题产生的原因可能是累积性问题,是一系列复杂操作引起的,而有些可能是时间点的问题,只有在某个瞬间进行操作才能出现,过了那个时间点进行操作时就不会出现问题,这样的问题测试人员在测试时和记录时都要注意采取合适的测试策略。

第六,有些概率性可能和测试人员的操作习惯有关,一个测试人员测试出的问题有时候即使描述的很详细,让另一个测试人员来测,可能都很难发现问题,所以概率性的问题在解决之后最好由相关测试人员进行验证。

第七,对于在一些难以重现的比较严重的概率性问题,有关测试人员还可以大范围的搜集相关信息,如可以群发消息询问其他测试人员或者产品试用人员,看他们在测试过程中有没有出现有关现象,搜集的信息越多越容易分析出问题的规律、原因,这样也便于开发人员解决问题

第八,实际测试中,你会发现很多所谓概率性问题,经过反复、测试验证,还是能够找到一定规律的,只要按照有关操作进行,都可以百分之百出现。所以,概率性问题还是尽量分析原因、找规律,必要时做个专项验证测试。

第九,对于一些让开发人员也束手无策的难以再现的问题,这种情况下可以使用带trace的版本进行测试,再现时直接分析相应的log记录。当然这些都属于开发人员解决问题方式方法范畴,相信他们都有自己独到之处,在此就不班门弄斧了。

说了那么多,最后给出一个概率性问题专项测试的例子。

概率性问题测试分析实例:

测试背景:

项目为一款手机产品,在测试中遇到一个概率性问题:播放TV的时候来电,有的手机会出现重启动的问题,有的手机却没有遇到该问题,由于问题比较严重,所以,针对此问题做了专项验证。

以下有关测试记录:

XXX项目平台版本TV播放状态下来电专项测试

摘要

TV播放状态下来电,会出现无法接起来电的情况

测试方法

预置条件:
蓝牙相关
操作步骤:
1.测试机XXX进入TV播放状态;
2.来电;
预期结果:
手机正常响应来电,不会出现重启等异常问题

XXX TV播放状态来电测试记录

 

1

2

3

4

5

6

7

8

9

10

手机和蓝牙耳机连接状态下,进行播放TV时来电测试,结果如下

0

P

P

P

P

P

P

P

P

P

P

1

P

P

P

P

P

P

P

P

P

P

2

P

P

P

P

P

P

P

P

P

P

3

P

P

P

P

P

P

P

P

P

P

4

P

P

P

P

P

P

P

P

P

P

5

P

P

P

P

P

P

P

P

P

P

6

P

P

P

P

P

P

P

P

P

P

此时使用蓝牙耳机重拨,手机重启.蓝牙不和手机连接,继续测试播放TV时来电,结果如下

7

R

P

P

P

R

P

P

P

P

P

8

P

R

R

P

P

P

P

P

P

P

9

P

P

P

R

P

R

P

P

P

R

10

P

R

P

P

P

P

P

P

P

P

此时拔去手机电池,重新开机,进行播放TV时来电测试,结果如下

11

P

P

P

P

P

P

P

P

P

P

12

P

P

P

P

P

P

P

P

P

P

13

P

P

P

P

P

P

P

P

P

P

14

P

P

P

P

P

P

P

P

P

P

15

P

P

P

P

P

P

P

P

P

P

使用蓝牙耳机发起连接,手机和蓝牙耳机处于连接状态,然后进行播放TV时来电测试,结果如下

16

P

P

P

P

P

P

P

P

P

P

17

P

P

P

P

P

P

P

P

P

P

18

P

P

P

P

P

P

P

P

P

P

19

P

P

P

P

P

P

P

P

P

P

20

P

P

P

P

P

P

P

P

P

P

上面50次还是没有出现重启的现象,接下来使用蓝牙耳机重播,让手机重启,然后再进行TV播放状态下来电测试(手机不和蓝牙耳机连接),记录如下

21

R

P

R

R

P

R

P

P

P

P

22

P

P

P

P

P

P

P

P

P

P

23

P

P

P

P

P

P

P

P

R

R

此时拔去手机电池,重新开机,进行播放TV时来电测试,结果如下

24

P

P

P

P

P

P

P

P

P

P

25

P

P

P

P

P

P

P

P

P

P

26

P

P

P

P

P

P

P

P

P

P

以上30次未出现重启问题.然后连接蓝牙耳机,通过蓝牙耳机重拨,使得手机重启.重启后,进入TV播放状态,进行来电测试(蓝牙未连接),记录如下

27

P

R

P

P

P

P

P

P

P

P

28

P

R

R

P

P

P

P

P

R

P

连接蓝牙耳机,使蓝牙耳机重拨,手机重启,重启后关闭蓝牙,然后进行播放TV时来电测试,记录如下

29

F

R

P

P

P

R

P

P

P

P

30

P

P

P

F

F

F

P

R

F

F

上面20次出现3次重启现象,6次没收到回铃音自动挂断对方来电问题.
(没有收到回铃音的问题前面测试也有遇到,有些没有统计)

说明

测试版本:XXX
语言设置:/
测试者:XXX
测试日期:2007-12-11
硬件:#1

测试小结

通过上面几轮测试知,TV播放时来电重启问题和前面进行的使用蓝牙耳机重拨导致的手机重启问题有关。
1.播放TV时蓝牙耳机重拨导致手机重启,手机重启后进行播放TV时来电操作,会出现重启现象(和蓝牙开启关闭无关).概率:21/110;
2.播放TV时蓝牙耳机重播导致手机重启后,将手机电池拔去,再重新开机进入TV播放状态,TV播放状态下来电,不管蓝牙是否连接,手机均不会重启动,包括刚开始阶段的测试共200次,未出现重启现象.

3.使用蓝牙耳机重拨,导致手机重启后,关机(不拔电池),重启后进入TV播放状太下来电,结果:播放TV时来电仍然会出现自动重启的问题。概率:4/20

4.出现播放TV时来电自动重启的问题,拔去电池后再开机可以恢复,如果不拔电池进行重启,不能恢复。(当然这个结论仍然需要再使用大量测试进行证实,经后来很多次测试证实,结论成立!)

注:

1.      根据上面测试得出的结论,后来又做了一些验证,进一步证实了结论的正确性。

2.      上面测试中还发现一个播放TV时来电时,有时候会出现呼叫方听不到回铃音,之后电话便自动被挂断的概率性问题。另行处理!

概率性问题测试注意事项:

1.         概率性问题是很让人很让人头疼,但有必须面对,在测试时一定要注意做好记录,包括第第几次出现的,清晰明确的测试记录对我们分析问题很有意义!

2.        如果实际测试10,有两此出现问题,那么在做概率记录时,应该写为2/10,而不要自作聪明的写为1/5或者20%.

3.   使用醒目的颜色标准来区别不同的测试记录能够让人一目了然,建议使用(对问题项还有一些批注在此显示不出来,实际Excel文档中建议使用)

4. 做概率性问题验证测试的确很麻烦,如果只因为怕麻烦而不想做的话,那么建议你去开公司当老板或者改行

B站最完整Python接口自动化测试进阶教程合集!真实模拟企业项目实战,看完这套就够了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/101301.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何将jpg转化为png?

如何将jpg转化为png?可能有的小伙伴就会疑惑了,jpg和png都是图片常用的一种格式,为什么要进行格式的更改呢?那是因为PNG格式具有更好的图片质量和更少的失真。JPG(或JPEG)格式的图片通常是压缩过的&#xf…

Mall脚手架总结(二) —— SpringData操作Elasticsearch

前言 万字长文带你弄清楚SpringData中的Elasticsearch操作以及在脚手架里接口的结构关系!经过前面鉴证授权的整合,荔枝开始熟悉项目的学习的方法了,虽然脚手架中的内容比较简单,但是把边角的知识点全部扫到还是比较花时间的尤其是…

C#和JS交互之Microsoft.ClearScript.V8(V8引擎)

之前测试了很多JS引擎,都只支持es5语法,不支持执行es6,测试了下微软的V8反正能跑通,应该是支持的。还得是微软呀。 如图:安装相关包: 这是参考的官方V8代码 using Microsoft.ClearScript.JavaScript; us…

当下测试行业中UI自动化面临的难点及如何解决

经常有人会问,什么样的项目才适合进行UI自动化测试呢?UI自动化测试相当于模拟手工测试,通过程序去操作页面上的控件。而在实际测试过程中,经常会遇到无法找到控件,或者因控件定义变更而带来的维护成本等问题。 哪些场…

jvm--执行引擎

文章目录 1. 执行引擎的工作流程2. 解释器、JIT及时编译器3. 热点代码及探测技术4. HotSpotVM 中 JIT 分类 执行引擎属于 JVM 的下层,里面包括解释器、及时编译器、垃圾回收器 JVM 的主要任务是负责 装载字节码到其内部,但字节码并不能够直接运行在操作…

Zookeeper分布式一致性协议ZAB源码剖析

文章目录 1、ZAB协议介绍2、消息广播 1、ZAB协议介绍 ZAB 协议全称:Zookeeper Atomic Broadcast(Zookeeper 原子广播协议)。 Zookeeper 是一个为分布式应用提供高效且可靠的分布式协调服务。在解决分布式一致性方面,Zookeeper 并…

Docker 的网络与数据管理

Docker 网络实现原理 Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关。因为在同一宿主机…

栈的模拟实现(Java)

目录 1、 栈的概念2、栈的使用3、栈的模拟实现 1、 栈的概念 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last I…

Linux 部署1Panel 现代化运维管理面板进行公网远程访问

🎬 鸽芷咕:个人主页 🔥 个人专栏:《速学数据结构》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言1. Linux 安装1Panel2. 安装cpolar内网穿透2.1 使用一键脚本安装命令 2.2向系统添加服务2.3 启动cpolar服务…

爬虫Python

文章目录 基本数据类型bytes类型python数据类型转换(必会!!!) python运算符(必会!!!)python数字数学函数(必会!!&#xff…

uni-app:实现view元素强制换行(解决长字符和英文字符不换行问题)

效果 换行前 换行后 核心代码 word-wrap: break-word; 或 word-break: break-all; 完整代码demo <template><view><view class"all_style"><view class"line1">aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</view>…

ubuntu离线编译安装cmake 3.22.5(could not fonud OPENSSL) and cmake-versinon查不到版本问题

1、首先去cmake官网下载压缩包,例如: cmake-3.22.5.tar.gz 2、拉到ubuntu进行解压: tar -zxcf cmake-3.22.5.tar.gz 3、cd 进入目录 cd cmake-3.22.5 4、执行configure可执行文件 ./configure 如果在编译过程中出现报错:Could NOT findOpenSSL,原因可能是缺少ssl库 按…

独享IP地址的层级划分和管理:打造稳定高效的网络架构

在网络架构设计中&#xff0c;独享地址的层级划分和管理是一项关键任务。它不仅能提供更好的网络性能和安全性&#xff0c;还能帮助企业实现更高效的资源管理。本文将为您详细介绍独享地址的层级划分和管理的重要性&#xff0c;并提供具体的方案和实际操作建议。 第一部分&…

高压放大器在纳米材料中的应用有哪些

高压放大器是一种重要的电子设备&#xff0c;可以用于增强输入信号的电压。在纳米材料领域&#xff0c;高压放大器也具有广泛的应用。下面西安安泰将介绍高压放大器在纳米材料中的应用&#xff0c;并探讨其可行性和潜在的研究方向。 纳米材料传感器&#xff1a;高压放大器在纳米…

10月11日,每日信息差

今天是2023年10月11日&#xff0c;以下是为您准备的16条信息差 第一、SHEIN在广州投资百亿的湾区供应链项目提速。该湾区供应链项目将建设集运营仓储、备货、拣货、分拨、发货等为一体的供应链仓储物流中心 第二、国内首条碳化法荧光级氧化镁中试生产线在青海建成。据了解&am…

大数据面试题:Spark和Flink的区别

面试题来源&#xff1a; 《大数据面试题 V4.0》 大数据面试题V3.0&#xff0c;523道题&#xff0c;679页&#xff0c;46w字 可回答&#xff1a;1&#xff09;Spark Streaming和Flink的区别 问过的一些公司&#xff1a;杰创智能科技(2022.11)&#xff0c;阿里蚂蚁(2022.11)&…

微服务10-Sentinel中的隔离和降级

文章目录 降级和隔离1.Feign整合Sentinel来完成降级1.2总结 2.线程隔离两种实现方式的区别3.线程隔离中的舱壁模式3.2总结 4.熔断降级5.熔断策略&#xff08;根据异常比例或者异常数&#xff09; 回顾 我们的限流——>目的&#xff1a;在并发请求的情况下服务出现故障&…

【踩坑】hive脚本笛卡尔积严重降低查询效率问题

前一阵子查看我们公司的大数据平台的离线脚本运行情况, 结果发现有一个任务居然跑了一天多, 要知道这还只是几千万量级的表, 且这个任务是每天需要执行的 于是我把hive脚本捞出来看了下, 发现无非多join了几个复杂的子查询, 应该不至于这么久, 包括我又检查了是不是没有加上每…

MTK平台闪光灯相关信息

&#xff08;1&#xff09;概念 MTK打闪一般分为预闪、主闪两个阶段。相应的执行一次拍照会有预闪、主闪两次开灯。预闪可以用来防红眼(red-eye reduction)。闪光时使环境发生变化&#xff0c;会按新的光线条件&#xff08;有闪光时&#xff09;重新测光&#xff0c;来实现更精…

python- excel 创建/写入/删sheet+花式遍历

文章目录 前言python- excel 创建/写入/删sheet花式遍历1. excel 创建2. 写入excel3. 创建写入excel demo实战4. 删除sheet5. excel 花式遍历 demo实战5.1. 获取 A1的值5.2. 获取指定列的切片数据&#xff0c;获取 B1到B5的值5.3. 循环整个excel的这个sheet5.4. 遍历指定行&…