• 0
  • 0
分享
  • 提效必会:逆向思维在解决问题中的应用——软件测试圈
  • 曼倩诙谐 2021-12-07 10:27:53 字数 2152 阅读 1039 收藏 0

  一、问题提出

  项目现场人员经常会出现如下场景:

  现场人员给家里支持人员打电话或发邮件:“系统发布失败,出现×××××错误,现场无法解决,错误日志已发过去了,请支持”。

  支持人员看过日志,回复:“你把××××修改一下,重启下试试看好用不了”。

  现场人员:“修改了,还是不好用……”

  支持人员:“哦 ,那你在检查一下×××××配置的是否正确,看看是否哪配错了。”

  现场人员:“都检查好几遍了,没发现错误……”

  支持人员:“家里这边没有出现你这个问题啊,启动都正常”

  现场人员:“那好吧,我再试试看吧……”

  ……

  上面只是举了一个简单的例子,项目实施过程中可能会遇到各种各样的问题,通常都是按照上面场景描述的方式进行问题解决的。一些常规的问题,通过一些已经积累的经验,往往可以直接解决,但是有些问题,由于没有遇到过,解决起来只能靠多次的尝试,家里和现场一来二去之后,问题可能还是没有得到解决,或者又出现了新的问题,效率大大降低。

  本文介绍了一种逆向思维的问题解决方式,可以较好的提升效率,已在多次问题解决过程中得到应用,效果显著。

  二、应用实例

  常规的问题解决的思维方式是这样的:

  “修改×××××,看看问题是否解决,如果没有解决,再修改×××,直到问题解决”,这种方式是一种正向思维。

  逆向思维的方式是这样的:

  “修改××××,看看是否出现问题,如果没有问题,再修改×××,直到问题出现”。

  逆向思维解决问题的方式的重点是“重现问题”,而不是“解决问题”,想尽一切办法使问题重现,总会有解决方案。

  按照逆向思维的方式,上面提到的场景就变成这样了:

  现场人员给家里支持人员打电话或发邮件:“系统发布失败,出现×××××错误,现场无法解决,错误日志已发过去了,请支持”。

  支持人员看过日志,回复:“根据你的错误日志,我们经过多次尝试,重现了你的错误,通过调整××××,可以解决这个错误,你试试看”。

  现场人员:“好用了,非常感谢!”

  通过两种思维方式的对比可以看出,逆向思维的处理方式只用了很少的回合,就解决了实施现场的问题,效率明显提升。正向思维是指导现场人员去“直接解决问题”,逆向思维是根据现场人员的反馈去“重现问题”,从而“间接的解决问题”。

  下面再举几个正向思维和逆向思维的例子:

  ·实例一

  实施现场出现页面折线图中文乱码问题,现场环境是linux+websphere.两种思维方式对比如下:

  正向思维:指导现场调整linux的locale设置、websphere的jvm字体设置、websphere的jvm参数,现场反复修改测试,始终都还是乱码,问题没有得到解决。

  逆向思维:家里有linux+websphere环境,但折线图中文显示正常,没有乱码,经过几轮调整测试,终于也出现了乱码,和现场情况一样了。最终确定是由于linux自带的字体必须支持中文,其他设置都不是问题关键。现场检查了一下,发现linux自带的字体中刚好就没有安装中文字体,于是问题很快就解决了。

  ·实例二

  实施现场反馈,数据导入功能,当导入500条记录时,可以导入成功,当导入1000条记录时,就会失败,现场环境是linux+websphere,而windows+tomcat环境下,1000条记录都可以导入成功。家里也搭建了测试环境(linux+websphere),1000条也可以导入成功。经过几番测试和排查,都没有找到问题在哪,现场人员怀疑和平台有关。两种思维方式对比如下:

  正向思维:检查代码、检查现场环境,查找各种可能的解决方案并不断尝试,看问题是否能解决。

  逆向思维:在家里的linux+webpshere环境下重现问题,重现现场出现的错误日志。通过分析错误日志,应该是在读取到某条导入数据时,读取到的日期格式有问题,程序无法识别导致出错。但同样的导入文件,家里环境中可以正常导入。为了重现错误,故意将导入文件的第一条记录的日期格式改成错误的格式,执行导入,结果日志中出现了和现场一模一样的错误信息,到此已经可以确认就是导入文件中的某些数据有问题。开发人员完善了代码,将导入的代码中加入了日志输出,如果有数据记录导入失败,则输出该条记录的信息。现场更新代码后再进行测试,日志中果然出现了一条记录的错误日志输出信息,原来该条记录中有汉字显示成了乱码,影响了整条记录的格式。家里的导入文件是从现场拿来的,同样那条记录中就没有乱码,这也说明了实施现场问题的复杂性,什么稀奇古怪的情况都可能出现。

  三、总结

  当正向思维方式很难解决问题时,不妨尝试一下逆向思维方式,二者需要相辅相成,灵活运用。采用逆向思维来解决问题,往往需要搭建一个用于重现问题的环境,需要反复进行假设-测试论证-再假设-再测试论证的过程,直到问题出现。对于实施项目来说,很多时候现场调试解决问题非常麻烦,逆向思维的这种方式实际上是把更多的测试和验证工作放到了家里,给现场的只是一个最终可以解决问题的结果,不仅仅是提升了支持的效率,相信现场人员对这种支持方式会更加满意。



作者:云竹   

来源:http://www.51testing.com/html/91/n-4480191.html


2021 问卷礼物图.png

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 前言JMeter在请求时,肯定会需要参数传递,参数值如果不变动或者不需要加解密这些操作,则操作上都是比较简单。如果参数值不固定,而且需要加解密正确的时候该如何操作呢?先说一下我这个接口大概的需求:该接口主要实现获取出符合要求的二维码链接;请求参数通过RSA加密,需要生成符合要求的RSA加密值;不知道加密具体机制,但是有源码可以直接调用。实现1、生成jar包这一步很重要,如果自己熟悉java,则需要自己读懂开发的java代码,提取出我们需要的方法,对其进行修改,并且进行打包。如果不行,则可以找开发帮忙。这里不能贴出我写的源码,毕竟每个公司需求也不一样。这个步骤,我主要是对传入参数进行了修改,只需...
            0 0 1370
            分享
          • 快捷键首先,我们进入具体命令的info界面。如使用info grep 或者 info info命令。即可进入如下界面:此时再单击h键,即可查看info内的帮助。如下图:即可查看info中可以使用的快捷键说明:操作:x:关闭 info内帮助界面Ctrl + g:取消当前操作(如搜索)页面内移动:↑:移动到上一行↓:移动到下一行Tab:移动到下一个超链接处(menu或交叉引用),按Enter键跳转链接deletebackPage Up:移动到上一屏空格键Page Down:移动到下一屏node间移动:Home:移动到node的开始End:移动到node的结束l:返回到上一个查看的node[:移动到...
            0 0 1819
            分享
          •   虽然当代社会已经是一个男女平等的社会,但是在职场中男女平等真的做到了吗?  真实情况是还是有区别对待的,特别是已经结婚但是未生育的职场女性。同样的工作能力,同样的薪资要求,一般企业更会倾向于选择一位男性求职者。  那么作为一个重返职场的宝妈或者是即将成为宝妈的女性来说,在职场中更是不占优势的,那么这部分人在求职或者工作的过程中,应该注意一些什么呢?  准宝妈之求职篇  作为一位准宝妈来说,如果目前是有工作的,那么是不建议在妊娠期间更换工作的,出去应聘的时候,企业会考虑到实际情况:要产检、不能加班、又很快会面临产假......  在员工本身还没有给企业创造价值的时候,企业还需要支付员工的产假...
            0 0 1128
            分享
          •   这是一个对刚入行,还是测试小白时候的面试问题的反省。相信很多测试小白也和我一样,在面试的时候被问过这样的问题:  ·给你一支笔,怎么测试?  ·怎么测试一个水杯?  ·现在有一样某某事物,来说说你怎么测试它。  等等各种类型的问题。  小白经历  “嘿,这个问题问得好,问对了!我有了解过。”  这是我当时心里的想法,现在想起来觉得有点傻。  不过当时作为一个跨行业、只有自学的一些测试基础的小白来说,面试遇到这种之前在百度什么的看到过的问题,心情肯定是激动的,毕竟对于当时的我来说,问深一点的问题我可不太会。  因为之前有看到过这个问题,当时直接就根据网上的答案来回答了,口若悬河,那叫一个流畅...
            1 2 855
            分享
          •   chatGPT回答未来五年我们测试发展的方向  问题:未来五年测试行业发展怎么样  回答如下:  预测未来五年测试行业的发展趋势是有困难的,但是一般认为,测试行业将继续发展,因为软件行业的需求不断增长。  以下是一些预测的发展趋势:  智能化测试:随着人工智能和机器学习技术的不断发展,智能化测试将成为测试行业的主要趋势。  自动化测试:自动化测试已经成为测试行业的重要组成部分,并将在未来五年继续发展。  DevOps: DevOps的普及将使得测试和开发更加紧密地结合在一起,测试将成为软件开发的一个不可分割的组成部分。  云测试: 随着云计算技术的不断发展,试也将越来越多地利用云技术。  ...
            0 0 175
            分享
      • 51testing软件测试圈微信