《Web测试囧事》——第1章 功能测试:技术篇 1.1 输入框中输入超过最大允许值造成页面跳转溢出...

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

第1章

功能测试:技术篇

提到测试,大家首先会想到的就是功能性的测试,因为只有保证了产品的基本功能和流程,产品才具备给用户提供使用价值的能力,从而才有可能确定产品的核心竞争力。基于这一点,不仅测试人员和开发人员,还有产品经理、项目经理、业务方对功能完备性和正确性的重视程度也往往都是最高的。这也使得功能测试成为任何测试类型的基础。

在进行功能测试时,我们会使用诸如边界值分析、等价类划分、因果分析、组合测试(Pairwise Testing)等测试方法来设计和规划测试用例,但是这些方法大多都是从书本上学来或者从别的渠道了解到的理论方法。而实际上在一个真实的项目中如何运用,或者如何在特定的场景和情境下使用这些方法,去充分发挥这些测试方法的作用,并帮助我们高效地设计和执行测试用例却是更重要的问题。

正因如此,我们在功能测试部分并没有介绍这些方法是什么,而重点在于展示在一个具体的场景下,读者应该如何思考,怎么把理论知识和实际工作结合起来,以发现和避免可能遇到的陷阱。

功能测试部分的故事篇幅都会比较长,希望读者能够每读完一个故事,都留出一段时间进行思索和回味,从而理解故事的核心,触类旁通。

为了让每一章的故事更凝练,我们把功能测试部分分成了4章,分别是:技术篇、测试覆盖篇、测试实践篇和业务需求篇。这4章从Web开发流行的各种技术(例如响应式设计、特性开关、虚拟化等)、测试技术(例如实例化需求、集成测试、契约测试等)、测试实践(例如探索性测试、回顾会议、缺陷大扫除等)和业务需求(例如用户的并发操作、关联操作以及产品功能的一致性等)方面向读者全方位展示功能测试范畴中的常见问题和解决办法,更重要的是指引大家从一步一步的分析中得到解决问题的思路。

本章(技术篇)介绍了在开发和测试的技术方面引起的11个功能测试问题,现在大家和我们一起来看看这些丰富多彩的故事。

1.1 输入框中输入超过最大允许值造成页面跳转溢出

作为计算机系毕业生的小蔡,一直觉得学校里学的理论知识和现在的测试工作差距太大,在实际的工作中也没有什么作用,直到有一天她碰到这么一个有趣的问题。

小蔡负责测试的是一个Web产品,基于不同的搜索条件会显示大量的结果。由于搜索结果太多,所以页面有分页功能,为了方便用户快捷跳转到特定的页面,开发人员特意设计了一个页面快速跳转的功能(见图1-1)。

image

在设计测试用例的时候小蔡就留心了,因为很多测试理论的书籍都描述过,对于输入框可以进行的验证点很多,比如:特殊字符、超长字符、负值、0值和null值,以及很大的数值等。小蔡发现,对于大部分的测试用例,开发人员都处理得很好,没有发现缺陷,她也就松了口气。

但是,当她测试到输入大数值的测试用例时,由于不确定多大的数值会出错,也不能拿到代码,小蔡就探索性地选了一个数值:9 999 999 999(10个“9”)。当输入10个“9”点击“确定”按钮时,突然页面崩溃了!她仔细回想刚才的测试过程:100以内的小数值,以及输入小于等于搜索结果页面数的数值等情况,测试结果都很正常。那到底数值大到什么程度的时候页面会崩溃呢?一时想不到更好的办法,小蔡只好硬着头皮尝试着定位出错的数值范围。

image
image
image

发现了这个隐藏的缺陷,小蔡很有成就感,但又觉得如果能早点知道代码的逻辑,可能自己就不会花这么长的时间了。同时,小蔡一直觉得计算机的理论知识不会应用到测试实践中,可没想到这次多亏了学校中学到的这些基础知识,不只是int32,232,甚至还有二分查找算法也给了自己解决问题的灵感。没有这些知识,定位问题就更困难了。

image
image
image
image

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值