简介:

项目前台框架: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. SpringCloud-day08-Hystrix断路器

    8.Hystrix断路器 8.1.Hystrix简介 在分布式环境中,许多服务依赖项中的一些必然会失败.Hystrix是一个库,通过添加延迟容忍和容错逻辑,帮助你控制这些分布式服务之间的交互. Hys ...

  2. Java框架spring Boot学习笔记(九):一个简单的RESTful API

    RESTful API设计需求如下: User.java package com.springboot.test; public class User { private Long id; priva ...

  3. Oracel递归查询start with ...connect by prior在Mysql中的实现

    Oracle是一个强大的数据库,有很多的函数和语法可以带来很多便利,有些函数和语法在Mysql中有代替的,但是有些没有现成可用的方法,比如Oracle的递归,在Mysql中怎么实现呢? 例子: Ora ...

  4. Mac/Linux 常用命令

    一 mkdir 创建文件夹 mkdir myApp 在当前目录下创建myApp文件夹. mkdir -p /a/b/c 创建/a/b/c文件夹,如果/a或/a/b不存在,则自动创建. 二 touch ...

  5. 【c# 数据库】对数据库进行增删查改

    1.DataGridView链接数据库 2.链接数据库 using System.Data.SqlClient; SqlConnection con = null; //创建SqlConnection ...

  6. 关于vue中tamplate和DOM节点浅谈

    前言:在开发前段页面使用vue时,我们能经常看到template标签.这里粗略讲下自己对vue中template理解和使用. 1. 先了解vue vue.js是一个轻巧.高性能.壳组件画的MVVM库. ...

  7. laravel路由无法访问,报404,No query results for model [App\Models\...]

    今天遇到了一个问题,在routes/web.php中配置了路由,但始终无法访问该路由,一直报404. Route::resource('gift_packs', 'GiftPacksControlle ...

  8. Gitlab的安装

    # GitLab Server 的搭建 参考 https://about.gitlab.com/installation ## 1. 准备工作 以Centos7为例,准备一台至少内存为4G的机器. # ...

  9. mr微博内容推荐

        第一次迭代 1 package com.laoxiao.mr.weibo; import java.io.StringReader; import org.apache.commons.lan ...

  10. 一次HTTP请求响应涉及了哪些?

    HTTP请求和响应步骤 TCP/IP协议 TCP三次握手 HTTP协议 HTTP请求报文 HTTP响应报文 TCP四次挥手 HTTP请求和响应步骤 以上完整表示了HTTP请求和响应的7个步骤,下面从T ...