博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Web测试囧事》——1.2 索引值计算错误使资源缩略图显示和大图展现不一致...
阅读量:6281 次
发布时间:2019-06-22

本文共 1055 字,大约阅读时间需要 3 分钟。

本节书摘来自华章计算机《Web测试囧事》一书中的第1章,第1.2节,作者 黄勇 雷辉 徐潇 杨雪敏,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.2 索引值计算错误使资源缩略图显示和大图展现不一致

业务方希望在商品展示的页面,不仅能添加展示图片,还可以展示关于商品的视频(见图1-3)。

image
image

小蔡按照通常的步骤编写完测试用例,开始使用标准测试数据执行测试。小蔡首先发现点击右下角链接时,本应该显示第1张图片或者视频,但是打开的却是第2张图片或者视频。

小蔡觉得这可能是开发人员在处理图片和视频展示的数组时,使用的是自然数计数,从1开始作为第1个数据项,而非计算机程序数组中通常使用的把从0开始计数作为第一个数据项。当小蔡把这一问题上报之后,开发人员发现确实是这个原因,并进行了快速修正。

小蔡在开发人员新发布的包上又一次进行了测试,这次测试用例基本没有什么问题,她就开始在类真实环境中执行探索性测试,结果发现在某些商品页面进行图片和视频跳转时,出现图片或视频显示错误或者显示成空白的问题。

在老牛的协助下,小蔡发现了问题出现的两个规律:① 当从第n张图片切换到视频的时候,系统显示的并不是用户期待的第1个视频,而是第n个视频;②当商品的图片和视频数量不一致,从数量多的资源切换到另一个数量少的资源时,内容就会出现空白。

小蔡和老牛都觉得出现问题的原因比较明确了,是因为在图片和视频跳转时,打开资源的索引值并没有清零,而是保存着前一个元素的索引值。

为什么这个问题在测试环境中没有发现,而在类真实环境中才被发现?原来最初小蔡在测试环境中执行测试用例的时候,使用的是基本测试数据,图片和视频都只有两个,而且两张图片和两个视频的内容分别都是一样的,因此不会出现这个问题。

小蔡和老牛商量了下,决定为了避免遗漏这样的问题,需要丰富测试环境的测试数据,使得测试数据更像真实数据,这样测试结果才更为准确 。

同时他们认为这个问题在开发人员的开发过程中也是不应该引入的,因为这样的错误比较初级。于是小蔡和开发人员进行了沟通,发现引入该问题的根源在于开发人员的疏忽。由于图片的文件格式和视频的文件格式不同,所以开发人员使用了两个库来支持图片和视频的打开,但是两个库之间的跳转需要通过在两个库之间传递参数来实现,然而开发人员并没有仔细检查两个库之间所传递的参数,导致并不需要被传递的索引值也传递到另一个库中。

老牛带着小蔡和开发人员立下一个约定:在使用第三方库实现功能时,一定要把使用的函数方法中的所有参数都核对清楚。

image

image
image
image

转载地址:http://jdsva.baihongyu.com/

你可能感兴趣的文章
大佬是怎么思考设计MySQL优化方案的?
查看>>
<三体> 给岁月以文明, 给时光以生命
查看>>
Android开发 - 掌握ConstraintLayout(九)分组(Group)
查看>>
springboot+logback日志异步数据库
查看>>
Typescript教程之函数
查看>>
Android 高效安全加载图片
查看>>
vue中数组变动不被监测问题
查看>>
3.31
查看>>
类对象定义 二
查看>>
收费视频网站Netflix:用户到底想要“点”什么?
查看>>
MacOS High Sierra 12 13系统转dmg格式
查看>>
关于再次查看已做的多选题状态逻辑问题
查看>>
动态下拉菜单,非hover
查看>>
政府安全资讯精选 2017年第十六期 工信部发布关于规范互联网信息服务使用域名的通知;俄罗斯拟建立备用DNS;Google打击安卓应用在未经同意情况下收集个人信...
查看>>
简单易懂的谈谈 javascript 中的继承
查看>>
iOS汇编基础(四)指针和macho文件
查看>>
Laravel 技巧锦集
查看>>
Android 使用 ViewPager+RecyclerView+SmartRefreshLayout 实现顶部图片下拉视差效果
查看>>
Flutter之基础Widget
查看>>
写给0-3岁产品经理的12封信(第08篇)——产品运营能力
查看>>