在线调试方案的思索与实施

2015/08/28 · HTML5 ·
调试

原稿出处:
在线调试工具,接口在线调试。李靖(@Barret李靖)亚洲城88官网,   

正文的要领不在移动端调试上,移动端调试无非就是调剂页面和调剂工具之间存在分离,消除那种分离并创办连结就能化解移动端的调试难点。重点阐释的是所见即所得的调试形式下会蒙受的阻挠。

当大家开辟网页,发现一个模块没有科学地渲染或许空白时,假使控制台有报错,会一贯依照报错定位到源码地点上马
debug;如若控制台没有报错,则会依照模块名或许模块特征的一个值,通过全局搜索找到这一个模块的岗位,然后在调节工具中断点,单步调试,找到难点所在,此时大家可能会这样做:

情形一:

小A同学打开控制台,发现断点调试不佳写代码,于是将削减的源码复制一份保存到本地,格式化,然后将线上资源通过代理工具代理到当半夏件。

情形二:

小B同学早早的为投机配了一份本地开发环境,于是她遇上难题之后,直接去源码中稳定错误地点,由于选取的是预处理语言,所以须求先打包编译之后再在本土预览效果。

情形三:

小C同学的调试格局是小A和小B的归结版本,将线上的资源代理到本地 build
目录文件,在 src 目录下修改今后编译打包到 build,然后预览。

背景

生儿育女环境中或许出现各个问题,尝试调试时须要得到程序运行时的数目音讯,如方法参数、重返值来定位难题,通过古板的增多日志记录的章程格外麻烦,而且亟需重新计划及重启server,代价很大。BTrace应运而生,调试时无需重启服务,可以动态地跟踪java运行程序,将跟踪字节码注入到运行类中,对运行代码侵入较小,对质量上的震慑可以忽略不计。
官网地址请点击

微信公众号支付须要精通种种接口的调用,大家生产了微信公众平台接口在线调试工具。

https://code.hcharts.cn/hcharts.cn/hhhGyw
https://jsfiddle.net/

☞ 代理调试的困扰

而对此比较复杂的线上环境,代理也会遇见许多阻力,比如:

线上资源 combo

并发谬误的剧本地址为  ,它对应着
a.js,b.js,c.js 多少个剧本文件,如若我们应用 Fiddler/Charles那样的经典代理工具调试代码,就非得给这个工具编写插件,恐怕在轮换配置内部加一堆判断或然正则,费用高,门槛高。

线上代码压缩

装进压缩,那是上线此前的必经流程。由于我们在包装的环节中并不曾考虑为代码添加
sourceMap,而线上前面对应 index-min.jsindex.js
也因为安全方面的缘故给干掉了,这给大家调试代码造成了大幅度的不便利。

代码器重较多,拉取代码问题

无数时候,大家的页面看重了多少个 asserts
资源,而那几个资源各自分布在多个仓库里面,甚至散布在不一致的发表平台上,为了可以在源码上清晰的调节代码,大家不得不将富有的资源下载到本地,时期如若存在下载代码的权力难点,整个调试进度就慢下来,那是极度不大概经受的业务。比如某系统创设的页面,页面上的模块都是以仓库为维度区分的,一个页面或然对应了5-50个仓库,下载代码实为劳动。

最吓人的调节是,本地没有对号入座的测试环境、代理工具又不满意大家的须要,然后就只能,
编辑代码->打包压缩->提交代码->查看效果->编辑代码->… ,若是您的连串支出是那种格局,请停下来,思考调试优化方案,正所谓磨刀不误砍柴工。

配置

在%JAVA_HOME%\bin
目录下打开jvisualvm,菜单中”工具”->”插件”->”可用插件”
中,勾选”BTrace Workbench”,点击安装即可。

进入微信公众平台接口调试工具

网站地图xml地图