首页 > 我的介绍
在线公开课
个人介绍

顾翔,1997年毕业于北京工业大学。中国计算机学会(CCF)会员、开源网安专家组成员、国家职业教育研究院,安全专家组,软件测试组成员、华为云开发者专家计划HCDE(Huawei Cloud Developer Experts)成员、腾讯云/阿里云开发者专栏作家。著有图书《软件测试技术实战-设计、工具及管理》《基于Django的电子商务网站设计 第一版》《全栈软件测试工程师宝典》《通过案例玩转JMeter(微课版)》《软件单元测试》。软件绿色联盟2018年最佳优秀讲师第一名获得者。先后就职于炎黄新星网络科技有限公司、中兴通讯股份有限公司、意法半导体(中国)有限公司和爱立信通信(中国)有限公司担任软件开发工程师、软件测试工程师,软件测试经理等职务,积累了丰富的软件研发测试的理论和实践经验。精通软件测试基础理论、测试设计、测试管理、安全测试、性能测试、自动化测试、敏捷测试和DevOps测试技术。从2015年起,从事金融、通信、航空、邮政、高校等企业的从事软件测试咨询和培训服务。

个人成就
项目经验
    开发项目(1997-2002)
  • “人民邮电报”“中国集邮报”等各类企事业网站的开发和设计
  • 中国电信三大上网工程“中国家庭网”的开发和设计
  • 中国第一批电子商务网站“800buy”网站的开发
  • 与CCTV合办“开心辞典”网上答题部分和设计
  • BBS、网上交易平台等BS架构电子商务网站开发
  • 测试项目(2002-)
  • 中国信息在线官网
  • 高效沟通管理产品
  • 自动语音应答系统(IVR)
  • 文本语音转换系统(TTS)
  • 电子海关港口
  • 合肥网上电子交易平台
  • 电子安全证书存储设备
  • WCDMA产品的测试
  • 数字电视中间件嵌入式软件的集成与测试
  • 基于SNMP协议及ITILE标准的网络管理软件
  • IMS通信软件DNS,DHCP,AAA系统
  • 高铁中控系统
  • 智能电表系统
  • 精准测试系统
  • 奇林软件测试系统
  • 演讲内容
      软件测试类
    • 《软件测试就业培训》
    • 《软件测试设计》
    • 《软件性能测试》
    • 《软件渗透测试》
    • 《WEB软件安全性测试》
    • 《软件测试前沿技术》
    • 《DevOps敏捷项目优秀实践》
    • 《功能的自动化测试(GUI、接口)》
    • 《JMeter从入门到精通》
    • 《APP自动化软件测试》
    • 《DevOps与Jenkins2.0》
    • 《C语言单元测试》
    • 《Java语言单元测试》
    • 《软件分层测试课程》
    • 《敏捷软件测试》
    • 《高级软件测试设计实战》
    • 《嵌入式软件测试咨询》
    • 《高级软件测试经理》
    • 《探索式软件测试》
    • 《JMeter从入门到精通》
    • 《APP软件专项测试》
    • 《软件测试前沿技术》
    • 《ChatGPT与软件测试》
    • 软件开发与软件工程类
    • 《Django入门课程》
    • 《用Python进行机器学习开发》
    • 《JAVA开发》
    • 《Python从入门到精通》
    • 《安卓APP软件开发》
    • 《HTML5 教程》
    • 《以项目为导向的敏捷课程》
    • 《人工智能Python入门》
    51testing对我的采访

    作者简介:
      1997年毕业于北京工业大学,2002年从事软件测试工作 ,曾经在互联网,嵌入式软件公司,ERP软件公司,网络管理软件公司担任测试工程师,测试经理,测试部门经理,现在北京瑞友股份有限公司上海分公司外派爱立信(中国)通信有限公司从事IMS软件测试工作。
      1、51Testing:您好,顾老师,可以简单介绍一下您自己吗?
      顾翔:我叫顾翔,于1997年毕业于北京工业大学,在互联网公司做开发的工作,我认为,那个时期刚毕业的我,学习能力还很强,因此我什么都干,包括网络编程;市场;网管等等,而毕业3-8年的阶段,阅历比较好,是工作最旺盛的时候。俗话说闻道有先后,术业有专攻。做什么事情都要有方向。因而我在工作几年后就进入了测试的行业。但我认为,凡事要多学习,我偏好多元化发展,来提高自己知识面,丰富自己的经验。虽然测试的方法形形色色的,但却有异曲同工之处,我喜欢在其中找到共性并且吸收转化成自己的方法。
      2、51Testing:听说您在从事软件测试工作之前是做开发的,是什么样的机缘巧合使您走上了测试之路呢?
      顾翔:是这样的。当时,还没有专门的测试的工作,是由开发人员专门进行测试工作的。我也在其中参与了我们公司测试工作,在其过程中,我对测试产生了极大的兴趣。并且与公司中资历较深的在老员工学习测试有关的知识。我们公司在2001年成立了测试小组,我便加入了这个小组。
      3、51Testing:既然您测试与开发的工作都有从事过,那么对于其中的奥秘自然也是比较了解的,许多测试员在纠结,究竟开发转测试或是测试转开发合适不合适,您可以给他们一些建议吗?
      顾翔:我个人认为,还是开发转测试较为合适。因为只有当你有了开发的工作经验,才会知道编码的程式是什么样的,了解什么地方容易出现缺陷。这样在你做测试的时候可以更快得找出漏洞。
      4、51Testing:那您认为作为一名测试员做好这份工作应该具备哪些知识、技能和经验?又要通过怎么样的培训和学习来提升自己的能力?
      顾翔:我认为作好软件测试工作要求具备以下知识,技能和经验:
      A:计算机知识及技能,包括阅读代码能力,了解主流 数据库,操作系统,网络能力,甚至于学习现在最热门的云计算,大数据知识。
      B:逆向思维能力:开发比较重技术实现,正向思维多;而测试要重业务,多采用逆向思维方法,有了逆向思维能力,才可发现更多的隐藏bug。
      C:学习能力:IT技术发展很快,只有通过学习才不会被淘汰。另外更好的学习业务知识对测试来说也是非常重要的,要作到比用户还专业。虽然很难,熟话说:"隔行如隔山",但这是非常有必要的。
      D:沟通能力:包括与测试人员,开发人员,老板,运维人员以及客户的沟通。
      至于个人方面,还要有三心:细心,耐心,专心。而有时可以去学习新的测试方法来换个角度测试,我经常会在网上寻找新的技术以及方法,多看看别人的bug,这样有些使用旧的方法解决不了的问题就迎刃而解了。要提高以上的这些能力不可能一蹴而就,是需要经过长期时间的积累的。但需要注意的是要随时学会总结,才可能取得进步。
      5、51Testing:确实如您所说的,古人云:不积跬步,无以至千里;不积小流,无以成江海。由此可见,您十分热爱学习并且也热爱测试这个行业,然而当今社会,许多人都沉不下心来工作。不少测试员认为测试的工作有时很枯燥。您对此怎么看?而您又是如何培养自己对工作的兴趣的?
      顾翔:我并不认为测试的工作枯燥。反而觉得很有趣。爱因斯坦说过:只有热爱才是最好的教师。做测试的工作要有灵感,勇于探索。找缺陷就犹如寻宝一般。在这个寻宝的过程中,我获得了许多财富。我认为培养对工作的兴趣有以下几方面:
      A:多学习。学习包括学习测试技术,学习业务技术,学习计算机知识以及其他知识。学习的方法可以阅读书籍,浏览网站,参加培训等。通过学习,你的知识面宽了,你可以运用更多的技能到测试工作的各个阶段,包括需求评审,用例设计,搭建环境,运行测试,总结测试结果,每当你通过学习得到的知识真正运用到你实际工作中去,你会觉得无比的快乐。
      B:多沟通。多与你的测试同事,开发同事聊天,内容可不限于工作,可以谈谈生活,爱好,兴趣等各个方面,这样就可以更全面地了解某人的性格,在工作中进行工作沟通的时候,对不同人采用不同方式,这样可以得到更好的结果。同时你也可以在工作中结实更多的朋友。
      C:摆正心态。心态决定一切,一个好的心态可以带来无法想象的结果。多想想同事领导对你的帮助,多想想工作给你带来的快乐…,而对不开心的事情马上忘记,每天带着快乐的心情   去处理每一项工作,这个是非常重要的。
      6、51Testing:那么就您的工作而言,您最喜欢什么?有没有什么不喜欢的?
      顾翔:我最喜欢的是进行探索性测试,我认为进行探索性测试经过多次测试计划,测试设计,测试执行以及测试总结,不断深入地对测试方法,业务进行学习,对产品由浅到深地逐步了解,这是个很有兴趣,很有挑战性,很愉悦的过程,从中我可以培养我的逻辑分析能力以及寻找更好的方法去解决问题的能力。我最没兴趣的事情是由于公司测试资源的紧张,为了测试,不断地重复地去搭建测试平台,我认为这是一件很枯燥无聊的事情。但虽无聊,也是要去硬着头皮去做的事情。
    7、51Testing:您工作了近17年,有相当丰富的工作经验,那么您在做这份工作时,什么是最成功的,什么最具挑战性? 工作中遇到过什么棘手的问题,要如何解决的?
      顾翔:最成功的事情是我刚进入一家做网管产品公司,担任的职务是测试部门经理,当时副总经理和我说目前公司测试力量比较薄弱,发布出去的产品问题比较多,support部门整天总是和119似的在救火,希望我能尽快改变测试团队的目前的状况,让问题尽早在公司里被发现。后来经过我与开发人员及测试人员沟通,发现问题主要存在以下几方面:
      ·  没有对代码建立版本控制体系
      ·  测试人员测试技能比较低
      ·  测试人员介入产品需求比较晚
      基于这三点,我采用的方法是:
      A:建立了用CVS对代码进行版本控制管理,测试人员都必须在统一发布出来的CVS版本上进行测试,不得像以前一样在自行编译脚本中进行测试,并且在进行正规测试之前必须对基本功能进行严格的冒烟测试,并且制定了冒烟测试用例。若冒烟测试没有通过,一律返回给开发人员。
      B:定期的对测试人员进行培训,提高测试人员的测试技能。
      C:要求测试人员参与产品需求评审,尽早了解需求,并要求测试人员有权力对需求提出建议或意见。并且确定下来的需求后,要针对需求书写下相应的测试用例,书写测试用例过程其实是了解需求,整理测试思路的过程。
      进过半年的努力,support部门"火灾"越来越少,并且我和测试部门得到公司高层的一致好评。
      至于最有挑战性的工作:是我刚到爱立信,由于以前作产品都是基于人机交互界面的,所以功能测试都是基于UI界面操作的测试。而通信软件就不一样了,它主要检查输入输出的数据包是否满足协议规定的要求,爱立信釆用TTCN测试语言来模拟输入输出包来实现的。虽然我1997年毕业到2002年一直从事软件测试工作,但到2012年进入爱立信有九年一直没有动过代码了,所以这对我来说是一个挑战。但是由于大学里面一直在编程,又加上五年的开发经验,再加上自己的努力,两个月后基本上掌握了这个语言,并且可以书写功能测试脚本了。回想这两个月中前一个月还是很辛苦的,写完测试代码,经过编译,都是些语法错误;或者语法错误没有了,去用编译好的TTCN脚本去测试开发写的代码总是UNPASS,经过trouble shooting ,结果总是我TTCN代码中出现了问题。但经过一次又一次失败,不断地总结经验,到最后掌握了这门语言和方法,心情还是很愉悦的。
      对于最棘手问题:我认为是当时作机顶盒STB项目的时候,我遇到一个认为是大问题的Bug,但开发及开发经理死活就是认为不是问题。后来我翻阅了相关标准,又咨询了三个系统工程师,还在网上查了各种资料,总共花了三天的时间,包括一个周末。最后我给那个开发与开发经理发了邮件,阐述了我的看法,经过自己努力,终于得到了开发与开发经理的认可。
      8、51Testing:那么根据您的专业知识,您是如何看待目前的测试的?
      顾翔:我对目前测试的一些看法如下:
      A:lEEE定义软件测试是验证显性与隐性的需求的一种活动。所以测试不能只测试需求规格说明书写的内容,对软件友好性,容错性等隐形需求也要进行验证。
      B:不管采取何种方式,基于风险还是基于需求的测试分析方法,所产生的测试用例一定要分等级,不同级别的测试用例,测试频率要不同,不可测试过度,当然也不可测试不及。
      C:不管是否釆用敏捷开发,测试工作一定要有相对的独立性,最好要由部分专职的专业的测试人员来进行。
      9、51Testing:作为一名资深的测试员,您对测试新人有哪些建议,可以让新手做的更好,更迅速的成长为测试高手?
      顾翔:有句话是这样说的,如果你还在"打工",如果你还认为工作是工作。那么你是失败的、你的想法也是不正确的。做一行,爱一行。要将工作作为一种兴趣,生活就会变得色彩斑斓,你才可以享受到生活乐趣。软件测试行业如同老中医,越学经验越丰富,所以前景是很光明的。我认为测试新人应该:
      A:多学习,尤其是多向老员工学习。可以是询问,参加培训。但更主要靠自学,可以多看看已有的测试用例,缺陷报告,看了以后要多问几个为什么,为什么他这样设计?为什么他会发现这个缺陷?
      B:多实践。软件测试是一门实践的科学,光说不练非把式。学习以后,多做一些测试工作,总结经验,遇到问题再返过来学习,效果会更好。
      另外,如果采用敏捷开发,俗话说:三人行,必有我师焉。找一位老同事与新人一起结对测试,这是很好的提高新人水平的机会。
      10、51Testing:访谈到这里也快告以段落了,不少测试员对软件测试的前景和未来发展还有疑惑,请您最后谈谈您是怎么看待软件测试这个职业和测试行业未来的发展?
      顾翔:我认为软件测试未来将会变得更复杂,主要表现在:
      A:采用敏捷开发以后,版本发布频率越来越快,对测试的水平也越来越高。对变化不大的功能及性能测试应尽可能用自动化方式来实现,以便可以进行持续集成Cl,这样自动化测试脚本可在每天晚上运行,第二天一早就可在第一时间知道最新版本代码库的质量了。另外,探索性测试(ET)也需要有一定技巧与经验。
      B:云计算产生了云测试,云技术增加了云供应商的这个新角色,对云供应商提供的服务也要进行测试。云技术增加了弹性容量概念,于是又一种新的测试方法产生了。另外在公有云环境中各种服务具有相互依赖性,这又给测试带来更大的复杂性。
      C:在大数据环境下测试技术也变得更为复杂。由于我接触大数据不太多,在这里不做展开。
      十分感谢您对小编工作的支持,顾老师的回答分析十分透彻,小编也对软件测试领域了解了不少,我相信这些将会给测试员带来颇多的收益。希望以后能有更多的机会,能让您分享测试心得!谢谢。最后的最后,希望大家可以多