网页偶现性崩溃-chrome
简介:
项目前台框架:Angular2 + Bootstrap(日期等组件) + Echarts + 响应式(包括页面、字体缩放:rem)
chrome版本:多个版本测试均有此问题。
表现:
- 订单详情页面崩溃(喔唷,崩溃啦!显示此网页出了点问题) F12中Network提示:Debugging connection was closed.Reason:Render process gone. Reconnect when ready by reopening DevTools.
- 查看具体xhr请求,两种状态;a.状态 200 ok,无返回,该页面其他请求也均无返回;b.请求一直在pending,无返回。
- 控制台无报错。
重现规律:
- 初步:未支付的订单,从订单列表页面进入到订单详情页会出现此问题。
- 深度:订单列表页面状态为waiting Payment或者In Process状态的订单。
定位思路:
- 据表现2,后台定位,无问题,打印数据已查出;
- filter层定位(是否filter出问题无返回),filter查看打日志,定位,均无报错,无发现问题;
- 据表现“Debugging connection was closed.Reason:Render process gone. Reconnect when ready by reopening DevTools”查询,可能是文件大小,或者什么导致,与后台确认,返回json不是特别大。
https://stackoverflow.com/questions/46855911/getting-error-debugging-connection-was-closed-reason-render-process-gone中 render process ended给了思路,是什么导致render process ended?方向应该是前台渲染
- 查询chrome《网页崩溃原因》,有没有什么导致内存泄露?检查代码
- 订单详情页面查看代码,没有发现可能导致内存泄露的代码。试着注释掉对于后台返回数据的接收,发现后台有返回了!!!注:是否因为数据量过大(ng2的数据绑定)导致页面渲染出现问题?
- 对后台返回数据重新进行处理,拆分,及时释放不用的变量。注:问题还是存在,可以确定不是数据量多大,ng2框架渲染问题。排除应该为数据原因触发。
- postman取出一个订单,未支付、支付两种状态的数据,对比,发现几个字段不同。对于未支付订单,后台接收到数据之后逐一更改,发现status字段改动为支付状态的值,问题会好。注:追踪前台对这一字段做何处理?发现为调用一公共进度条组件导致。
- 断点跟踪该公共组件,发现其中一段代码该状态下进入死循环。改动此代码,测试waiting Payment或者In Process状态下网页是否ok,确实ok,可确认问题由此死循环导致。
网页偶现性崩溃-chrome的更多相关文章
- 偶现bug如何处理?
请先允许我对此类bug进行吐槽,相信做测试的同学都碰见过这种bug! 我们在测试过程中经常会碰见一类很头疼的bug,就是偶现性的bug,所谓偶现性,是相对于必现而言,这类bug有些可以有重现路径,但是 ...
- Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 (需要在运行时生成core dump文件,QMAKE_CC += -g)
记录一下 Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 需要在运行时生成core dump文件 首先在pro结尾里加入 QMAKE_CC += -g QMAKE_CXX += - ...
- 程序员的踩坑经验总结(一):如何把Bug的偶现变必现
程序员的踩过的坑也是可以分类的,很常见又很难解决的一类是偶然的现象,表现起来比较怪异. 而把一个问题Bug的偶现变成必现,是开发人员的一种能力.我认为也应该是测试人员的一种能力,但是各个公司要求不一样 ...
- CAT偶现NPE的问题
1.背景 我们公司的调用链系统是基于大众点评的CAT客户端改造的,服务端完全有自己设计开发的.在是用CAT客户端收集dubbo调用信息的时候,我们发现了一个CAT偶现NPE的bug,该bug隐藏的很深 ...
- 【Golang】嗅探抓包,解决线上偶现问题来不及抓包的情况
背景 测试群里经常看到客户端的同学反馈发现了偶现Bug,但是来不及抓包,最后不了了之,最近出现得比较频繁,所以写个小脚本解决这个问题. 实现思路 实现的思路比较简单: 抓包 存日志 做日志管理 具体实 ...
- 15个网页设计必备的Google Chrome 扩展
2011年第一篇,翻译自freelancefolder的一篇文章.以下为译文内容: 最近,我将Google Chrome作为了我的主力浏览器,同时,将其作为我设计和开发网页的工具,尽管我还时常会去Fi ...
- 网页console console.log 用法 Chrome F12
#########sample 0 https://www.cnblogs.com/xiaozong/p/4961929.html https://blog.csdn.net/shanliangliu ...
- 小程序部分机型上一个诡异的偶现bug
如上图所示:开始的时候进到下单页面,价格是0,当选中了商品产生价格的时候,生成的价格如 ¥150,这个时候会只露出¥1以及一小半的5,后面的都被遮挡住了. wxml里是这样的写的 <view w ...
- AF引起的camera偶现卡顿问题
相关log如下: 01-01 08:04:26.299 867 3220 E Camera2Client: syncWithDevice: Camera 0: Timed out waiting sy ...
随机推荐
- C#分割字符串并统计重复出现的次数
static void Main(string[] args) { string ss = "12345678904682qwertyuioplkjhgfdsazxcvbnmmlpokuhy ...
- java.lang.RuntimeException: Class "org.apache.maven.cli.MavenCli$CliRequest" not found
IDEA版本:14.1 maven版本:apache-maven-3.3.9-bin IDEA的maven项目,在pom文件执行Maven--Reimport,引入jar包依赖,报错java.lang ...
- linux应用之test命令详细解析
test命令用法. 功能:检查文件和比较值 1)判断表达式 if test (表达式为真) if test !表达式为假 test 表达式1 –a 表达式2 两个表 ...
- C++——Vector
#include "opencv2/objdetect.hpp" #include "opencv2/videoio.hpp" #include "o ...
- 通过代码启动appium服务
如果选择npm安装的最新版appium 1.8.0以上版本,启动appium的时候,你会发现无法使用Node.js命令 这里给出两种方法来启动appim: 方法一: /** * 使用AppiumSer ...
- UnitZ Battlegrounds beta5 - Unity吃鸡类型游戏模版 源码 仿绝地求生
Requires Unity 2018.2.6 or higher.The first battle royale game starter kit on Asset Store, all syste ...
- 转*SqlSever查询某个表的列名称、说明、备注、注释,类型等
@原文地址 关键部分如下: ------sqlserver 查询某个表的列名称.说明.备注.类型等 SELECT 表名 then d.name else '' end, 表说明 then isnull ...
- Spring常用注解总结(3)
@Configuration 表示该类为"配置类",可替换xml配置文件.与@Component不同的是,@Configuration会生成CGLIB代理class. @Targe ...
- crontab学习
概念 日志路径 /var/log/cron 配置路径 vi /etc/crontab 参考 https://www.cnblogs.com/kenshinobiy/p/7685229.html 问题 ...
- sftp免密登录
最近在linux服务器上搭建了一个sftp服务器,在做免密登录时,因为理解的问题,走了些弯路,在此记录一下. 先来说一下服务器端,在服务端的每一个用户的根目录下都有一个.ssh目录,在这个下面放的公私 ...