zoukankan      html  css  js  c++  java
  • 读书笔记:读完互联网测试经验的感受

      之前下载了一些互联网公司的测试经验和技术介绍,因为太忙一直没有时间看。最近又翻出来重新看了一遍,感触还是挺多的,可能也是由于工作时间长了后有了一些新的感悟。
      主要有百度,腾讯,阿里下属的几个子公司(淘宝,支付宝,一淘),豆瓣等等,内容比较杂,有介绍测试经验和测试技术的,也有介绍自己的测试工具和自动化平台的。总体感觉互联网公司的测试工作还是比较高大上的,最起码比我们部门做的好多了。总结了一下,主要优点体现在以下几个方面:第一,尽早测试;第二,尽可能深入,测试从最底层开始,逐步上升集成;第三,尽量减少手工执行用例的工作量,大量使用自动化测试;第四,各种测试工具的开发和应用;第五,测试人员可以直接接触到线上系统和最终用户,这个渠道是畅通的。
      第一点:尽早测试。这个是测试行业公认的准则,一个BUG发现的越早,修复的成本就越低(说到这里,我非常佩服《软件测试的艺术》这本书的作者们,这些大师们在上个世纪提出的思想现在依然适用)。最快最省事的就是程序员在编码阶段中发现并修改的,这个在目前最主要的保证手段就是单元测试。看了好几家公司的介绍,对单元测试都非常看重,甚至在淘宝网的文档中有一个表格,专门对代码质量从各个角度进行打分,其中单元测试的覆盖率就是一项很重要的指标。另外在以前听一个讲座的时候也讲到,一个正确的测试体系应该是金字塔形状的,单元测试是最底层,同时占测试的比例也是最大的,大量的基本功能和编码错误应该在这个阶段就暴漏出来,而不是延迟到后端。
      第二点:尽可能深入,测试从最底层开始,逐步上升集成。这个其实和第一点有类似的地方,同样也是强调单元测试的价值和重要性。除此之外又强调把测试的工作和思想融入到整个开发过程中,这其实又包含了全功能研发团队的思想。开发人员在编码时就开始考虑如何测试并进行测试,测试人员从单元测试开始,依次到白盒测试,模块级别的接口测试,系统级别的集成测试,场景级别的验收测试。在每个级别有不同的测试策略和侧重点,越向上测试的角度越高,同时发现的问题也应该越少,如果到集成测试或者验收测试还发现有基本功能问题,那是应该好好分析下原因了。我始终坚持一个观点:测试人员应该深入了解产品,深入到代码级别,只有这样才能够发现产品的潜在问题,或者说才有资格去和开发人员PK。只是做黑盒测试,很多场景是考虑不到的,很多问题也是无法想到的。这一点上和我们的领导有冲突,他们认为测试应该站的层次更高,视野更开阔。我只想说,我觉得我们现在欠缺的是基本功,阅读代码,分析代码,理解业务,先把这些能力培养起来再说,如果基本功能都保证不了,何来的高大上?
      第三点:尽量减少手工执行用例的工作量,大量使用自动化测试。这些自动化测试框架有业界通用的如jenkins,RF等,也有自己开发的平台。目标和功能基本都是相同的,周期性的有持续集成的版本,代码修改和提交后能够第一时间启动构建验证正确性,绝大部分的回归测试自动化执行。甚至有篇文档中说验收测试是唯一需要手工执行用例的阶段,虽然我不太相信这样是否真的可行,不过也可以看出他们对自己产品质量和自动化测试能力的自信。
      第四点:各种测试工具的开发和应用;我印象最深的有两个,一个是自己开发的持续集成,自动化执行用例并输出测试报告的平台,类似于jenkins。另一个是支付宝开发的外部支付系统的模拟器,为了模拟各种不同银行的支付场景,方便测试。这个模拟工具和我之前开发并且一直在用的模拟器比较像,都是被测产品和外部系统有强交互关系,而外部系统又无法控制。所以自己开发工具来模拟这些外部系统,来方便构造各种真实环境中存在,但是研发过程中又很难产生的场景。
      第五点:测试人员可以直接接触到线上系统和最终用户,这个渠道是畅通的。这个真的非常重要,像我们现在的产品,将来发布出去如何部署,用户的使用场景是什么,整个研发内部都是很模糊的,仅有的一些信息都要经过好几层中转,往往是已经用到现场出现问题了以后,这才知道用户原来是这么用的。而像淘宝,他们的研发人员自己就是自己产品的用户,可以直接接触到线上系统,直接对线上系统的运行状态和日志进行分析,这样可以最真实的了解到产品的使用场景和最终用户的需求,更好的完善优化产品。
      最后还有一点,测试人员的价值体现在什么地方呢?有一篇文档中说的很好,原话我记不太清了,大概意思是:测试人员的价值体现在发现设计和编码人员思维狭隘的地方,帮助他们修正这个期间产生的错误,提出自己的建议,还有提前识别可能的风险和问题,预防缺陷的产生。从这个角度来讲,测试人员的工作不仅仅是发现BUG,向后一步包括如何修改BUG,向前一步包括如何预防BUG。
  • 相关阅读:
    PCB设计实战项目指导班26层板的设计
    AT2171 [AGC007D] Shik and Game 题解
    UVA11327 Enumerating Rational Numbers 题解
    P6222 「P6156 简单题」加强版 题解
    CF702F TShirts 题解
    P3747 [六省联考 2017] 相逢是问候 题解
    『学习笔记』PollardRho 算法 题解
    P7453 [THUSCH2017] 大魔法师 题解
    CF1575L Longest Array Deconstruction 题解
    最大公约数之和
  • 原文地址:https://www.cnblogs.com/tuochao/p/4536965.html
Copyright © 2011-2022 走看看