Skip to content

调试

代码调试

包括输出调试、日志调试和断点调试等,最主要的是学会断点调试,追踪函数调用站栈,分析代码执行过程

参考

移动端调试

参考:移动端真机调试

真机可以通过连接同一个wifi的方式,通过局域网ip直接访问本地开发环境。如果需要模拟真实域名,则可以结合switch host和 nginx代理来实现。

在真机环境下,可以通过USB连接电脑,然后通过chrome://inspect进行真机调试,适用于大部分Android手机,iOS的话可以使用Safari的开发者模式。

在某些屏蔽了inspect的环境下(如第三方app的webview中),还可以通过eruda等工具模拟PC端的开发者工具来实现调试

接口调试

接口调试一般都会问到如何抓包,抓包是接口调试必备的技能之一。常用的有

  • 浏览器控制台的Network面板
  • Chrome插件Postman,现在好像独立成一个桌面软件了
  • Fiddler抓包

这里简单介绍一下Fiddler的使用。Fiddler类似于代理服务器,会记录当前电脑的所有网络通信,

  • Fiddler设置,Tools-> Fiddler Options->Connections,勾选"Allow remote computers to connect" ,这里还可以设置端口号,Fiddler默认端口号为8888
  • 修改网络代理,一般是手机电脑同时连接局域网,然后修改wifi代理,每种手机可能不尽相同,基本操作是
    • 查看电脑在局域网中的ip地址,windows上使用ipconfig查看即可
    • Android,选择wifi->显示高级设置->代理主机名(填写主机IP,及fiddler端口号)
    • IOS,选择wifi->HTTP代理->手动->IP,端口号

fiddler中有两个常用的功能:

  • hosts,在开发中有测试服务器和正式服务器之分,通过Hosts配置可以方便地在测试环境和正式环境切换
  • filters,筛选网络请求列表

模拟数据接口

错误上报

调试本地环境一般比较容易,对于线上环境抛出的错误,一般就没那么容易定位了。可以使用sentry之类工具上报错误,同时查看错误栈,降低线上错误的排查难度。