《Web测试囧事》——2.5 异常场景处理不全面导致功能缺陷

简介:

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

2.5 异常场景处理不全面导致功能缺陷

很多测试人员在面试时会被问到如何针对特定产品测试,需要考虑哪些方面时,思路都会从两方面发散:正常场景、非正常/异常场景开始回答。从思维模式来说,测试人员就不同于开发人员比较习惯的正向思维,而是更多地从异常场景、用户场景等出发,全面地考虑使用产品时会出现的各种可能性,并通过给这些场景分配优先级来指导测试的执行。

但是测试人员并不是无所不能的,有很多异常场景光了解功能性需求是不够的,还需要了解一些架构与部署等非功能性需求。所以在设计测试场景,尤其是异常的测试场景时,很容易遗漏非功能性异常场景。小蔡最近就遗漏了一个关乎用户体验的异常测试场景。

产品在用户账户设置页面提供了收货地址管理的功能,用户可以增删改查自己的收货信息(见图2-7)。不过最近用户经常反映会有自己保存信息之后,下次打开信息丢失的情况。

image

小蔡在测试环境重现这个问题时,发现无论如何都重现不了。所以她经过申请,拿到了生产环境上的测试账号,尝试在真实环境中重现这个问题。

然而即便使用了生产环境,小蔡依然不能百分之百地重现这个问题,对收货地址的增删改查,只是有时能重现这个问题。

image
image

开发人员根据运维人员提供的信息,在日志中查看到确实如此,用户在保存信息时,虽然在前台看到信息已经被保存并且刷新了,但是由于发送的请求超时,后台服务器已经报错并记录在日志中了,不过后台并没有重新提交的机制,所以导致这一部分的信息丢失了。

这个问题时不时会出现,确实是由于负载均衡的服务器转发请求导致的,从日志里也能印证这一点。

一切正常的情况下,也是大多数情况下产品代码对用户收货地址的增删改查都不会出现问题,但是在网络环境不好等异常情况出现时,代码的处理就导致了功能缺陷的产生。

小蔡和开发及运维人员讨论到,虽然不希望产品代码是通过过度的防御式编程的模式编写出来的,但是对于异常场景的处理,尤其是前后台服务器之间的信息传递,需要更全面的覆盖。

就拿现在这个特定的问题来说,解决方案是首先解决负载均衡服务器转发超时的问题,此外还需要在产品代码相应的处理逻辑中添加请求超时重新提交的功能。

image
image
image
image

相关文章
|
3月前
|
开发框架 监控 安全
Windows Defender 导致 Web IIS 服务异常停止排查
某日凌晨IIS服务异常停止,经查为Windows Defender安全补丁KB2267602触发引擎更新,导致系统资源波动,进而引发应用池回收。确认非人为操作,系统无重启。通过分析日志与监控,定位原因为Defender更新后扫描加重负载。解决方案:将IIS及.NET相关路径添加至Defender排除列表,避免业务影响。
521 116
|
3月前
|
算法 Java Go
【GoGin】(1)上手Go Gin 基于Go语言开发的Web框架,本文介绍了各种路由的配置信息;包含各场景下请求参数的基本传入接收
gin 框架中采用的路优酷是基于httprouter做的是一个高性能的 HTTP 请求路由器,适用于 Go 语言。它的设计目标是提供高效的路由匹配和低内存占用,特别适合需要高性能和简单路由的应用场景。
324 4
|
3月前
|
Java 测试技术 网络安全
Burp Suite Professional 2025.10 for Windows x64 - 领先的 Web 渗透测试软件
Burp Suite Professional 2025.10 for Windows x64 - 领先的 Web 渗透测试软件
166 0
Burp Suite Professional 2025.10 for Windows x64 - 领先的 Web 渗透测试软件
|
3月前
|
安全 Linux iOS开发
Burp Suite Professional 2025.10 发布 - Web 应用安全、测试和扫描
Burp Suite Professional 2025.10 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
333 3
|
4月前
|
安全 NoSQL Shell
web渗透-SSRF漏洞及discuz论坛网站测试
SSRF(服务器端请求伪造)是一种安全漏洞,攻击者可诱使服务端发起任意请求,进而探测或攻击内网系统。常用于端口扫描、访问内部服务、读取本地文件等。常见防御包括限制协议、域名和IP,但可通过302跳转、短地址等方式绕过。
293 1
web渗透-SSRF漏洞及discuz论坛网站测试
|
5月前
|
JavaScript Java 微服务
现代化 Java Web 在线商城项目技术方案与实战开发流程及核心功能实现详解
本项目基于Spring Boot 3与Vue 3构建现代化在线商城系统,采用微服务架构,整合Spring Cloud、Redis、MySQL等技术,涵盖用户认证、商品管理、购物车功能,并支持Docker容器化部署与Kubernetes编排。提供完整CI/CD流程,助力高效开发与扩展。
687 64
|
8月前
|
边缘计算 安全 5G
高精度时钟同步测试仪:构建全场景时间同步生态
在数字化转型中,时间同步至关重要。西安同步电子科技的 SYN5106 高精度时钟测试仪,具备±20ns 时差测量精度与 GPS/北斗双模授时能力,广泛应用于电力、通信、金融和科研领域。它解决变电站时间偏差、5G 基站同步误差及高频交易延迟等问题,助力智能电网、5G 网络和科研实验。产品便携可靠,支持多协议,满足国家安全要求,为各行业提供精准时间同步解决方案。未来将探索量子通信与深空探测等领域,持续推动技术创新。
|
安全 JavaScript 前端开发
AppSpider 7.5.020 发布 - Web 应用程序安全测试
AppSpider 7.5.020 for Windows - Web 应用程序安全测试
117 0
|
4月前
|
安全 Linux iOS开发
Burp Suite Professional 2025.9 发布 - Web 应用安全、测试和扫描
Burp Suite Professional 2025.9 (macOS, Linux, Windows) - Web 应用安全、测试和扫描
471 0
Burp Suite Professional 2025.9 发布 - Web 应用安全、测试和扫描