软件测试定位问题方法

上一篇 / 下一篇  2015-01-22 10:09:18 / 个人分类:软件测试方法


  软件测试定位问题方法

   随着it行业的发展,软件测试的普及,再加上测试行业入行门槛要求相对较低,在各大小城市中,软件测试工程师如雨后春笋般地涌现; 在这个竞争激励的年代,想要在测试行业有所突破,需要掌握扎实的理论知识外,还需要掌握不断发展和改进的测试技能,以下为我在测试工作中对软件测试定位问题方法做的一些总结,欢迎大家多批评指正。 
   在软件测试过程中,发现问题,可能不是什么难事,但要精准的定位到问题出在哪里,需要用到一定的技能和经验积累; 
    而研发人员,往往也都希望测试人员对问题能做到精准的描述,以便能快速定位到问题所在模块,进行快速分析和解决;

一、抓包分析
 1、在使用浏览器测试过程中,如何判断是前端的问题,还是后端的问题,单单从报的错误,或者无响应,或者返回空白页面上,都无法定位到问题出在哪里,这个时候,就需要借助一些工具来定位问题,首先从发起的http请求开始定位;
 2、基于浏览器的http请求,许多浏览器都有自带的插件,可以抓取到http的请求和返回,例如chrome,firefox都有自带的抓包工具,开启之后,都可以看到你手工操作工作中抓取到的http请求和返回报文;如下图为chrome浏览器按F12抓取到进行搜索的请求和返回。

 3、除了自带的插件可以抓包外,还有许多第三方的抓包工具,例如fiddler,以下简单介绍一下fiddler抓取的报文; 
  打开fiddler,按F12开启抓包;
  对点击收取邮件进行操作,进行报文抓取

  
  抓取到的http请求和返回数据如下:

  
  4、这就是一个简单的获取邮件列表时抓取到的http请求和返回数据,其他的请求进行类似的操作即可抓取到,如何判断是http请求的报文有问题,还是响应结果有问题,就需要根据接口设计规范文档中的描述来作为依据,进行判断;

  5、fiddler可以模拟发起请求,通过Composer页签,把获取到的请求分别填写到请求url,请求body,点击Execute即可 (需要保证当前的会话有效)

二、看日志分析
  排除掉前端的问题之后,需要逐层分析,从后台服务来进行分析定位,当然,定位分析问题的前提条件是,需要对业务流程非常清楚,清楚各模块之间的交互;假如后台服务的平台为linux,则需要对linux的一些常用命令进行掌握,采用tail -f 、 more , grep ,等命令来跟踪日志,最终定位到具体模块的错误信息,或者接口请求、返回结果

三、查询数据库分析
  在测试过程中,除了通过前端的体现来对用例的执行结果进行判断外,还需要对数据库的结果来进行检查,例如对于一个订单的提交,前端返回成功,如果单凭前端返回成功来判定该用例执行成功的话, 很有可能在后台数据处理出现错误,该用例实际的执行结果是失败的;  这种情况下,就需要对数据库表中的值进行查看验证。

四、排除法定位
  我们发现问题时,往往直接提交bug,但有些问题是在特定账号或者特定环境下才会出现,而当研发对问题进行修改时,发现问题不能重现而打回, 为了能对问题进行精准定位,则需要用排除法来定位问题的重现条件。



TAG:

 

评分:0

我来说两句

Open Toolbar