测出让人血压升高的页面崩溃,我是如何排查的

发表于:2022-12-20 09:36

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:刘晓佳Rachel    来源:51Testing软件测试网原创

  前情回顾
  前几天在一次web应用测试过程中,前端发起了向后端接口的查询请求,由于后端响应较慢,前端一直处于等待响应返回状态。在几分钟后,突然页面出现让人惊悚的“噢噢,页面崩溃了”几个大字。
  看到这几个字的一瞬间,血压突然飙升,脑袋里嗡地一声冒出一串问号:发生了什么事?于是,抱着可能是“出现错觉”幻想,再次在前端重复了操作步骤,结果不出所料依然“噢噢,页面崩溃”。
  毕竟,我是长着一颗“钢筋铁脑壳”,肯定得追根溯源,查找下什么原因。
  剧情延续
  已经确定,上述现象是一个“必现”的故障。我已经有了信心可以将这个现象提交成一个故障交给开发同事分析而不会被拒绝,但是本着“节省彼此沟通时间”和“好奇心理”,我决定进行初步排查。
  1.排除后端接口故障
  再次触发故障,登录后端服务器查看接口接受请求和返回响应日志,发现前端故障出现时,后端仍处于“等待响应返回”状态。因此,不可能是因为后端返回数据太大等原因造成”页面崩溃”,暂时排除后端故障!
  2.前端异常摸排
  排除后端故障后,转战前端故障摸排。由于不太熟悉前端日志存放,所以选择了常用的浏览器调试模式进行排查,看看能不能得到想要的结果。
  打开浏览器调试窗口,切换到“内存“菜单(样例如下图所示)。再次重复操作步骤,触发“页面崩溃”故障。过程中突然注意到,内存调试窗口的“JS堆总大小”快速增长,然后出现“页面崩溃”。
  重复几次测试,都发现“JS堆总大小”快速增长。由此可以初步确定,前端内存溢出,导致页面崩溃。
图1 浏览器内存调试窗口示意图
  那么,如何进一步分析内存溢出点呢?
本文源自第六十九期《51测试天地》
《记一次测试中出现的前端内存溢出》一文
查看更多精彩内容,请点击下载:
  版权声明:本文出自《51测试天地》第六十九期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号