2017-02-19 令狐葱
node程序的调试向来是比较令人头疼的问题,不过Chrome DevTools在去年已经可以支持node程序的调试,虽然不像使用Eclipse调试Java程序那么方便功能那么强大,但是也算是提供了一个便捷的途径来帮助我们快速的定位node程序的问题。 这个功能是在Google I/O 2016上正式发布的,可以通过这里的视频(youtube,需翻墙)了解更多信息。 使用步骤记录如下: 安装最新的Node 要支持这项功能,需要node.js的版本在6.3.0以上。如果版本较低,将会提示不支持该功能。在Mac上你可以使用nvm来切换node的版本,具体请自行google之。 ➜ wx node --inspect -- 继续阅读 »
2016-07-25 ruki
现在xmake在windows下,也已经支持调试运行了,可以在编译完debug版本的程序后,直接进行调试开发。。 我们继续以tbox工程为例: bash $ xmake f -m debug $ xmake r -d demo 上述命令,先配置了debug模式编译,为了启用pdb调试符号文件的生成,然后自动编译后,调试运行demo程序。。 xmake会在配置的时候,自动检测windows上注册表里面的默认调试器,然后加载我们的目标程序并运行。 一般情况下,加载的是vs自带的vsjitdebugger调试器,当然xmake也支持windbg和ollydbg(做逆向的,这个用的比较多哈。。) 我们试着运行demo中的exc 继续阅读 »
2016-07-27 ALEX LIN
Reveal是分析、调试iOS应用UI的利器。 Reveal能够在运行时调试和修改iOS应用程序。它能连接到应用程序,并允许开发者编辑各种用户界面参数,这反过来会立即反应在程序的UI上。就像用FireBug调试HTML页面一样,在不需要重写代码、重新构建和重新部署应用程序的情况下就能够调试和修改iOS用户界面。 继续阅读 »
2016-07-16 ruki
xmake默认在编译完程序后,可以通过以下命令运行指定目标程序: bash $xmake run [target] [arguments] ... 并且在linux/macosx下面,目前已经支持关联调试器,去直接调试指定目标了,只需要加上-d/--debug参数选项: bash $xmake run -d [target] [arguments] ... 默认情况下,xmake在macosx下用的是lldb,在linux下用的是gdb,调试器xmake会在配置的时候去自动检测,如果需要指定调试器路径,可以手动去配置它: bash $xmake f --debugger=/usr/bin/gdb 继续阅读 »
2016-08-24 Wenjie Yao
本文翻译自liusy182   Jest框架是facebook旗下一款单元测试框架,我个人十分喜欢它,因为它自动mock这一点十分强大。然而,当它遇到问题的时候,就会经常抛出一些模糊的调用栈信息。我在网上搜索尝试找到如何debug Jest测试的方法,却很难找到有用的信息。总之,它仍然还是一个比较新的测试框架。   Jest使用虚拟DOM来运行测试。这一点不同于Karma和Jasmine(它们是利用浏览器来运行测试的)。我觉得这就会给它带来一个很大的缺点:不能使用浏览器上的调试工具来调试Jest的测试。因此,我们需要借助于Node/V8引擎自带的调试器。Node默认的调试器是完全基于命令行形式的,类似于GDB - 虽然我从来就不 继续阅读 »
2015-06-18 浩阳
content {:toc} 什么是 weinre? weinre官网 上有两句有意思的介绍: weinre is WEb INspector REmote. Pronounced like the word "winery". Or maybe like the word "weiner". Who knows, really. weinre is a debugger for web pages, like FireBug (for FireFox) and Web Inspector (for WebKit-based browsers), except it's designed to work remotely, a 继续阅读 »
2016-12-29 LEo
在Windows上,通过Cygwin编译的c程序在运行时,若有内存错误也会产生类似Linux上的core文件,但是该文件一般是以stackdump为后缀的文本文件,且文件提供的信息有限,只包含了程序coredump时函数调用的栈信息,不能像Linux一样使用gdb调试。所以,在Windows平台调试Cygwin编译的c程序不太方便。本文介绍一种方法,通过反汇编c程序,结合程序coredump时生成的stackdump文件,可以快速定位出程序的coredump位置。 继续阅读 »
2018-08-14 Piasy
上一篇文章里有位读者朋友咨询我,如何调试 WebRTC iOS demo。显然这个小问题不值一篇文章,所以这周我就花了大量的精力,解决了长久以来困扰广大 WebRTC 安卓开发者的难题:如何在 Android Studio 里单步调试 WebRTC Android 的 native 代码。 继续阅读 »
2014-06-30 码农明明桑
在Android开发中,我们使用android.util.Log来打印日志,方便我们的开发调试。但是对于正式发布的程序,我们并不希望这些Log信息显示,一方面对于用户来说影响机器性能,另一方面,其他开发者看到这些信息的时候,对我们应用程序的安全是有威胁的。所以,我们需要在正式发布时不让Log执行,或者将其移除。这里,我提供三种方法。 自己写一个Log的帮助类,在类中设置显示级别 示例代码如下,通过一个静态变量设置Log的显示级别。 more ```java public class Log { public static int logLevel = Log.VERBOSE; public static void i 继续阅读 »
2016-07-24 ruki
之前xmake默认编译windows目标,debug模式下采用的是-Z7编译选项,内置的调试符号信息到obj文件里面 但是这种方式按msdn的文档上说,是属于旧式的调试符号文件格式,所以为了考虑后续的兼容性,xmake修改了默认的调试符号生成规则, 改为默认启用pdb符号文件,并且pdb的方式更为常用。。 这个行为的修改,并不会影响到xmake.lua的设置,如果在这个文件中,设置了启用调试符号: lua set_symbols("debug") 那么,编译debug版本的目标时,就会自动生成pdb文件,以tbox为例: bash $ xmake f -m debug $ xmake 编译完成后,会自动在build 继续阅读 »