iOS应用 bug定位

 

 

碰到新功能要能耐心地花时间去思考方方面面和设计细节

如果直接动手开始实现单一核心功能

会有很多遗漏的细节导致出现bug

 

=======分割线==============

实际的线上产品情况是:

出现bug了......

用户发现bug,反映到运营

运营没能执行bug上报流程找到测试(目前也没有什么bug上报流程)

测试没能确定bug详情

告知我有闪退之类的bug

“你看,怎么又闪退了。。。”

“代码缺少健壮性!”

=======分割线======

于是我开始准备定位闪退原因

以下为“世界观”+“方法论”

1.bug能不能在测试机器上立即重现,必现的直接真机调试,确定崩溃的代码,修改并检查确认解决

2.bug信息不足,叫测试收集信息描述清楚bug产生的条件

  手机型号

  系统版本

  是否越狱

  app版本(可能是内测中某一时期分发的半成品),要联系到代码中配置的数据库环境版本,服务端程序版本。

  bug重现步骤

  是否必现

3.定位到了闪退的地方

  一般闪退都是因为数据的原因

  其他的异常在开发阶段Xcode就已经抛出,基本能在开发时解决

    所以,关键是:

    数据流

   由    数据库 ---> 服务端 接口  --->http传输-->客户端  --->代码来进行数据处理--->转换为模型--->列表展示--->....

  暂时没有对数据进行存储

  查bug思路:

  数据流经之处都是由开发者的代码进行处理的

  先查接口程序:接口端的准备和查询工作相对客户端较完善,查来较快。

         询问是否有报错日志,找到崩溃前后一段时间的接口请求记录是否有异常

  真机调试:尽量找到接近重现环境的真机进行调试,在出现闪退的步骤附近查看代码执行过程,断点调试,查看数据,辅助ide的异常信息来定位

  查看代码:断点一步一步查看程序执行时是不是如预期,思考代码执行步骤,检查代码逻辑

  找不到!!!

  给测试的说没有这个bug(下下策)

   我的境遇是一直查查查查。。。。。

 

 

  

     

  

  

  

  

 

posted @ 2015-10-28 19:32  柳豪  阅读(733)  评论(0编辑  收藏  举报