简介:

项目前台框架:Angular2 + Bootstrap(日期等组件) + Echarts + 响应式(包括页面、字体缩放:rem)

chrome版本:多个版本测试均有此问题。

表现:

  1. 订单详情页面崩溃(喔唷,崩溃啦!显示此网页出了点问题) F12中Network提示:Debugging connection was closed.Reason:Render process gone. Reconnect when ready by reopening DevTools.
  2. 查看具体xhr请求,两种状态;a.状态 200 ok,无返回,该页面其他请求也均无返回;b.请求一直在pending,无返回。
  3. 控制台无报错。

重现规律:

  1. 初步:未支付的订单,从订单列表页面进入到订单详情页会出现此问题。
  2. 深度:订单列表页面状态为waiting Payment或者In Process状态的订单。

定位思路:

  1. 据表现2,后台定位,无问题,打印数据已查出;
  2. filter层定位(是否filter出问题无返回),filter查看打日志,定位,均无报错,无发现问题;
  3. 据表现“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?方向应该是前台渲染

  1. 查询chrome《网页崩溃原因》,有没有什么导致内存泄露?检查代码
  2. 订单详情页面查看代码,没有发现可能导致内存泄露的代码。试着注释掉对于后台返回数据的接收,发现后台有返回了!!!注:是否因为数据量过大(ng2的数据绑定)导致页面渲染出现问题?
  3. 对后台返回数据重新进行处理,拆分,及时释放不用的变量。注:问题还是存在,可以确定不是数据量多大,ng2框架渲染问题。排除应该为数据原因触发。
  4. postman取出一个订单,未支付、支付两种状态的数据,对比,发现几个字段不同。对于未支付订单,后台接收到数据之后逐一更改,发现status字段改动为支付状态的值,问题会好。注:追踪前台对这一字段做何处理?发现为调用一公共进度条组件导致。
  5. 断点跟踪该公共组件,发现其中一段代码该状态下进入死循环。改动此代码,测试waiting Payment或者In Process状态下网页是否ok,确实ok,可确认问题由此死循环导致。

网页偶现性崩溃-chrome的更多相关文章

  1. 偶现bug如何处理?

    请先允许我对此类bug进行吐槽,相信做测试的同学都碰见过这种bug! 我们在测试过程中经常会碰见一类很头疼的bug,就是偶现性的bug,所谓偶现性,是相对于必现而言,这类bug有些可以有重现路径,但是 ...

  2. Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 (需要在运行时生成core dump文件,QMAKE_CC += -g)

    记录一下 Ubuntu16.04下写的Qt程序,调试时没问题,运行时偶现崩溃 需要在运行时生成core dump文件 首先在pro结尾里加入 QMAKE_CC += -g QMAKE_CXX += - ...

  3. 程序员的踩坑经验总结(一):如何把Bug的偶现变必现

    程序员的踩过的坑也是可以分类的,很常见又很难解决的一类是偶然的现象,表现起来比较怪异. 而把一个问题Bug的偶现变成必现,是开发人员的一种能力.我认为也应该是测试人员的一种能力,但是各个公司要求不一样 ...

  4. CAT偶现NPE的问题

    1.背景 我们公司的调用链系统是基于大众点评的CAT客户端改造的,服务端完全有自己设计开发的.在是用CAT客户端收集dubbo调用信息的时候,我们发现了一个CAT偶现NPE的bug,该bug隐藏的很深 ...

  5. 【Golang】嗅探抓包,解决线上偶现问题来不及抓包的情况

    背景 测试群里经常看到客户端的同学反馈发现了偶现Bug,但是来不及抓包,最后不了了之,最近出现得比较频繁,所以写个小脚本解决这个问题. 实现思路 实现的思路比较简单: 抓包 存日志 做日志管理 具体实 ...

  6. 15个网页设计必备的Google Chrome 扩展

    2011年第一篇,翻译自freelancefolder的一篇文章.以下为译文内容: 最近,我将Google Chrome作为了我的主力浏览器,同时,将其作为我设计和开发网页的工具,尽管我还时常会去Fi ...

  7. 网页console console.log 用法 Chrome F12

    #########sample 0 https://www.cnblogs.com/xiaozong/p/4961929.html https://blog.csdn.net/shanliangliu ...

  8. 小程序部分机型上一个诡异的偶现bug

    如上图所示:开始的时候进到下单页面,价格是0,当选中了商品产生价格的时候,生成的价格如 ¥150,这个时候会只露出¥1以及一小半的5,后面的都被遮挡住了. wxml里是这样的写的 <view w ...

  9. AF引起的camera偶现卡顿问题

    相关log如下: 01-01 08:04:26.299 867 3220 E Camera2Client: syncWithDevice: Camera 0: Timed out waiting sy ...

随机推荐

  1. python学习Day14 带参装饰器、可迭代对象、迭代器对象、for 迭代器工作原理、枚举对象、生成器

    复习 函数的嵌套定义:在函数内部定义另一个函数 闭包:被嵌套的函数 -- 1.外层通过形参给内层函数传参 -- 2.返回内部函数对象---->  延迟执行, 开放封闭原则: 功能可以拓展,但源代 ...

  2. Game Engine Architecture 6

    [Game Engine Architecture 6] 1.Data-Parallel Computations A GPU is a specialized coprocessor designe ...

  3. linux查看Java线程

    一.查看Java进程pid的方式 1. ps命令 ps -ef | grep java 2. jvm自带的 jps 工具 3. 当然还有其他命令也可以显示 netstat ,top 二.查看Java线 ...

  4. svn仓库迁移

    注意事项 1.仅迁移代码.日志.版本信息,(用户.权限.配置即conf目录需要手动移动或重新配置) 2.新仓库需无代码,即新建仓库后不要进行上传操作,否则迁移可能造成冲突,导致迁移失败 操作步骤 1. ...

  5. React-Native android 开发者记录

    1.安装 安装步骤不多废话,按照官网步骤执行即可 安装完之后,react-native run-android发现报错,页面出不来 Error: Unable to resolve module `. ...

  6. 【Spring学习】SpringMVC demo搭建

    前言:今天会通过IDEA建立一个SpringMVC的demo项目,在其中会涉及到一些基础模块和相关知识,然后结合这个具体的知识点,理解清楚SpringMVC的框架原理(以图的形式展示),顺藤摸瓜分析源 ...

  7. TZOJ 5694 区间和II(树状数组区间加区间和)

    描述 给定n个整数,有两个操作: (1)给某个区间中的每个数增加一个值: (2)查询某个区间的和. 输入 第一行包括两个正整数n和q(1<=n, q<=100000),分别为序列的长度和操 ...

  8. Ubuntu配置ORB-SLAM2过程中的问题

    https://www.imooc.com/article/details/id/29136 1. 提示“CMAKE_CXX_COMPILER-NOTFOUND ” 具体形式: Check for w ...

  9. 理解javascript中的立即执行函数(function(){})()

    之前看了好多代码,都有用到这种函数的写法,但是都没认真的去想为什么会这样写,今天开始想学习下jquery的源码,发现jquery也是使用这种方式,用(function(window, undefine ...

  10. git tag 查看标签列表、切换标签

    1.查看标签列表 git tag 2.切换标签(需要指定分支 test 为分支.v0.17.7 为标签版本) git checkout -b test v0.17.7