记:一次由面及点,又及逗号的Phantom debug

2023-11-22 05:21

本文主要是介绍记:一次由面及点,又及逗号的Phantom debug,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

什么bug?bug什么?咋肥四?

这是我司一个客户端软件,此处是将业务系统网页上的图表截图,放入客户端页面里。

你也看到了,这图,,白了。而在页面上的这货呢?

生龙活虎,有蹦有跳,可大可小。那么问题来了,它经历了什么?

bug图的奇幻漂流的,,,还原:

首先,we have a phantomjs , we have a page ,呃♂!screenshot!

没错,客户端通过调用phantomjs将图表的页面截下来

但是phantomjs如果直接看她(图表页)会被壮汉(login)拦下,

所以,我们为了成全phantomjs给壮汉偷偷弄了个绿……sso页,

最初,我怀疑是phantomjs访问的 sso页面 有问题。

然后我就找他对了个峙:

我想了想,phantom这孩子怎么就没看到呢,我都看到了鸭?

然后我去问了问phantom他咋肥四:

咦?他说妹子找不到衣服了所以没出来?

然鹅

于是,我去找了下,这个叫做showMchart的衣服在哪:

那么这个衣服谁提供的呢?

在这,那么为啥就没给出去呢?我王某人怀疑这家伙根本没出门!于是我加了这么一段:

又教phantomjs做这么个事:

去吧!phantom!于是:

哎?咋啥也没有呢?这衣服供应商(viewmquadrant.js)根本没工作啊?

然后我看了看是谁找的这一家:

emmm,竟然还是自动找的,(话说原来还都是没有这么多 金三月半 代码的,咋突然就多了……sigh)

那么这块找到的是啥呢?

看起来仿佛没问题啊?难不成是phantom这孩子去看的时候发生了啥?

然后我准备debug phantom,于是我在叫这孩子的时候加了一段口诀:

--remote-debugger-port=9000

然后扒开这孩子的脑子

然后我在Console里敲下了__run();+Enter

换行了?说好的运行到Breakpoint呢?于是stackoverflow了一下

我又试了下:

我决定放弃,这孩子脑子不太好使=-=

然后我发现了这个

哦豁,VSC赛高!配置如下:

然后开始愉快的de他!

我们在open之后evaluate之前打个断点,然后看看这个page里有没有加载那个js的script节点

我发现这样不行。然后决定在源代码里写log,运行结果如下

这不是有么?明明正常浏览器上没问题,这孩子也加载了js,怎么就看不到了呢?

于是我怀疑是延时问题,那么让我们来等他反应一会:给个5秒。

结果喜(xi)大(wen)普(le)奔(jian):

还是白的

那么问题来了,与这个图类似的图呢?viewChart是个通用的页,别的小伙伴也通过它来看图啊

所以我找到了动态散点图

Owww……这图就没问题,尤其对比底层builder之后发现,这俩图,高度一致!

那么问题来了:歪?

于是,我开着vsc准备对比一下

好像发现了那里不对……

唔姆唔姆,给你们标个特写

对,罪魁祸首是个逗号菌!

完。

 

这篇关于记:一次由面及点,又及逗号的Phantom debug的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/407819

相关文章

(function() {})();只执行一次

测试例子: var xx = (function() {     (function() { alert(9) })(); alert(10)     return "yyyy";  })(); 调用: alert(xx); 在调用的时候,你会发现只弹出"yyyy"信息,并不见弹出"10"的信息!这也就是说,这个匿名函数只在立即调用的时候执行一次,这时它已经赋予了给xx变量,也就是只是

flume系列之:记录一次flume agent进程被异常oom kill -9的原因定位

flume系列之:记录一次flume agent进程被异常oom kill -9的原因定位 一、背景二、定位问题三、解决方法 一、背景 flume系列之:定位flume没有关闭某个时间点生成的tmp文件的原因,并制定解决方案在博主上面这篇文章的基础上,在机器内存、cpu资源、flume agent资源都足够的情况下,flume agent又出现了tmp文件无法关闭的情况 二、

Nn criterions don’t compute the gradient w.r.t. targets error「pytorch」 (debug笔记)

Nn criterions don’t compute the gradient w.r.t. targets error「pytorch」 ##一、 缘由及解决方法 把这个pytorch-ddpg|github搬到jupyter notebook上运行时,出现错误Nn criterions don’t compute the gradient w.r.t. targets error。注:我用

jmeter之仅一次控制器

仅一次控制器作用: 不管线程组设置多少次循环,它下面的组件都只会执行一次 Tips:很多情况下需要登录才能访问其他接口,比如:商品列表、添加商品到购物车、购物车列表等,在多场景下,登录只需要1次,我们期望的是重复执行登陆后面的接口来做压测,这就和事务相关,例如 事务1: 登录—>添加购物车 事务2: 登录—>购物车列表 事务3: 登录—>商品列表—>添加购物车 … 一、仅一次控制器案例 在

一次生产环境大量CLOSE_WAIT导致服务无法访问的定位过程

1.症状 生产环境的一个服务突然无法访问,服务的交互过程如下所示: 所有的请求都是通过网关进入,之后分发到后端服务。 现在的情况是用户服务无法访问商旅服务,网关有大量java.net.SocketTimeoutException: Read timed out报错日志,商旅服务也不断有日志打印,大多是回调和定时任务日志,所以故障点在网关和商旅服务,大概率是商旅服务无法访问导致网关超时。 后

关于一次速度优化的往事

来自:hfghfghfg, 时间:2003-11-13 16:32, ID:2292221你最初的代码 Button1 34540毫秒 5638毫秒  Button2 我的代码 这个不是重点,重点是这个  来自:hfghfghfg, 时间:2003-11-13 16:54, ID:22923085528毫秒 不会吧,我是赛杨1.1G  128M内存  w2000, delphi6  128M

idea 怎么调试debug

1、这里以一个web工程为例,点击图中按钮开始运行web工程。 2、设置断点 3、使用postman发送http请求 4、请求发送之后会自动跳到断点处,并且在断点之前会有数据结果显示 5、按F8 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内,跳到下一条执行语句。 6、按F7在 Debug 模式下,进入下一步,如果当

一次关于生产环境服务无故宕机的排查过程

故事的开始 这个故事是在一年之前,当时我们的系统运行在客户的k8s环境上。然后很神奇的是每个月底我们都会服务宕机,当然我们开启了多个实例。当时的容器线条就像心跳图一样(或许有些描述的不太准确,我没有找到当时那个像心电图一样的容器资源监控图)。 第一次的排查 当时我们还是很有信心去解决这个问题的。由于每个月的月底都是业务使用的高峰时段,也就是说,从表象上来看,qps一高,容器就挂。 业务日

02 Shell Script注释和debug

Shell Script注释和debug 一、ShellScript注释 ​ # 代表不解释不执行 ​ 语法:# # 创建myshell.sh文件[root@localhost ~]# vi myshell.sh # 写入内容#!/bin/bash# 打印hello world(正确)echo "hello world"echo "hello 2" # 注释2(正确)echo

Tomcat怎样用Debug模式启动

在加装了Tomcat插件的Eclipse中可以设置用Debug模式启动Tomcat,此时Tomcat以及Web应用中的日志都以最详细的级别输出。 但如果直接从命令行用“starup.sh”启动,则只有INFO和更高级别的日志被输出,其他的都过滤掉了。 怎样才能在命令行里以Debug模式启动Tomcat?         你可以用配置Tomcat支持