【转载】Think as Customer 以客户为中心的测试理念

    纵观各大公司的核心理念,每每都有一条相似“以客户为中心”的价值观。华为公司更是把“以客户为中心”放在其核心价值观的第一条,以显示它的重要性。从我 们入职培训开始,公司就反复强调并引导你们深刻讨论,但愿使这一理念深刻人心。那对于咱们从事软件测试的工程师来说,如何真正践行“以客户为中心”的理 念,如何把这一理念融入平常的测试工做呢? 

    在回答这些问题以前先来看一个故事: 

    都说中国人喜欢搞运动,喜欢搞活动,老外就不这样。那是否是呢?讲述一个我经历的IBM举办的“以客户为中心(Think as Customer)”的活动。

    那是在2006年我为IBM 工做期间,我所在的WebSphere 产品线开展了很是大的 “Think as Customer”培训和实践活动以及硬性要求。这个活动跟咱们测试相关的思想是:

    - 测试人员要站在用户的视角看待产品和问题;

    - 当测试人员在测试过程当中遇到产品的问题,用户也一样会遇到;

    - 当测试人员经过错误提示和日志都没法找到缘由并解决问题,用户也会面临一样的状况;

    - 发现并解决一个很小的Serviceability问题,就会减小一个客户打support电话的机会,每处理一个support电话,公司就花费200美圆。 

     对于咱们测试团队,这个活动的硬性指标是:每发现10个1,2级的问题,必须开出3个3,4 级的Usability或Serviceability的问题。在这种要求下,迫使咱们测试人员在测试过程当中审视产品每个细节,仔细去验证产品的提示信 息、错误信息和日志是否正确反映了当时的状况,是否能够指引用户去独立修正错误而不须要求助于support。当时的确花费了咱们不少时间,但带来的好处 是把多年来不少小问题,测试人员以为可提可不提的问题,开发人员认为不是问题的问题等等,统统开出defect去修复。正由于有了从上到下的贯彻和执行 力,测试人员和开发人员共同参与这个活动,这让开发和测试对于这种类型的问题很容易达成共识,测试人员少了不少阻力,不少的交锋就无形化解了。

    虽然说这个活动为了3,4级defect而专门去找、去修复,让人感受有些死板和机械,可是活动自己促成咱们对Usability和 Serviceability问题进行了深刻的学习和讨论,加深了对此类问题的理解,并对以客户为中心的测试理念深刻人心。即便产品后来再也不搞这种专门的 活动,咱们已经造成了意识和习惯,自觉去践行这一理念,由于Think as Customer已经融入到咱们的工做之中。 
    再举一个最近发生的例子: 
    测试人员在测试大数据量备份时发现提交一个启用重删功能的备份做业,看成业运行一半左右的时间,终止它,这时做业会在一小段时间内终止,这里并无问题。 问题是接下来,当提交下一个备份做业后,做业显示正在进行中,而实际上须要等待2个小时左右,备份做业才会真正开始。当测试人员遇到这个问题,不知道为什 么做业会等待这么久才运行,并且没有日志输出告知咱们做业在干什么。让人很容易会觉得做业hang住并再次取消它,除非你不去管它,不然我不知道谁有耐心 持续等待2个小时左右。

    这个场景经开发人员分析,认为这一现象出现是由于终止第一个重删做业后,后台在进行碎片整理和删除工做,在这个工做完成以前新的做业是不能启动的,因此前 端会看到新的做业等待2个小时后才真正开始。开发就此得出的结论是这个不是问题,由于从他们的角度去看,这是正常的,当终止一个重删备份做业后,后台要进 行清理工做,而实际上后台也正是在作删除和碎片整理。可是若是从客户角度去看待这个问题,这个是不能接受的!首先,碎片整理和删除工做自己性能须要提 升,2个小时的处理时间太长;其次,若是性能没法提高,那碎片整理和删除这个工做自己出现的时机就须要改进,不能影响用户下一个备份做业,应该选择在没有 备份做业执行的时候运行;最后,日志也并无任何输出,用户没法得知后台在干什么,容易致使用户更多错误操做,甚至认为是产品出现问题。

    管中窥豹,从这个例子咱们能够看到,同一个场景,从开发人员角度以为不是问题的,但从客户角度看就有多是一个问题。因此对测试人员来讲,咱们对产品和问题的评判应该从客户角度出发,对不利于客户理解,不方便使用的问题说不,对于客户可能遇到的问题不妥协。 
    再来看下面这两个问题,是否容易得出答案了呢:

    - 软件测试是以开发设计为中心,仍是以客户为中心?

    - 当开发和设计人员说:产品就是这么设计的,就是这么工做的;而咱们发现从用户角度来看并不合理,咱们该怎么办? 
    软件测试应该站在客户的立场上去看待产品和问题,当与设计开发的场景发生冲突时,更要从客户使用的角度去考虑,模拟本身就是客户在使用咱们的产品,对因而 否是问题,判断起来就容易明晰。另外,咱们从上到下都应该贯彻“以客户为中心”的理念,当设计、开发和测试人员都有这种理念的时候,咱们对问题的识别和解 决就会顺利不少,更容易达成一致。 
    从客户角度考虑问题,不只限于发现问题,从产品设计和使用上,咱们也应秉承这一理念,测试人员是产品的第一个客户,若是咱们以为产品很差用,不容易理解的 地方,咱们的客户也会遇到一样的问题,咱们应该促使产品的设计和开发更加符合客户的使用,更加合理。这也是测试工程师的职责所在。

Please Think as Customer!性能

相关文章
相关标签/搜索