Page 111 - JavaScript修炼之道
P. 111
附录B JavaScript调试指南 103
B.8 网络可能是你的敌人
①
有时,你可能会碰到一些海森堡式bug :只要你一走开,这些bug就会出现。但当你开始单
步执行你的代码,或是试图在你的开发环境中重现这个bug的时候,这些bug又莫名其妙地消失了。
为什么会这样呢?
这些bug往往会在高延迟或是容易掉线的网络环境(拨号上网,或是低质量的代理服务器)
下运行Ajax程序的时候出现。你可以用一些被称为“减速代理”的软件来重现这种环境。在这方
②
面,我最喜欢的工具(可能也是最有名的工具)是Charles ,它基于Java开发(因此它可以在所
有主流平台下运行)。它不但可以控制带宽、调整延迟和改变网络行为,而且还可以录制和重放
网络会话,并提供详细的HTTP/HTTPS监控。这样的工具真可谓神器!
——————————
① 参见http://en.wikipedia.org/wiki/Heisenbug,指那些开发者一走开就出现,一调试就没影的诡异bug。*
② 参见http://www.charlesproxy.com/。