联系我:新浪微博@架构师Jack 或 dongjietest#163.com联系.(#换为@)

《我眼中的百度QA》第一篇:百度QA的特点与核心价值(下半部分)

上一篇 / 下一篇  2013-04-09 11:07:59 / 个人分类:测试专家管理经验

《我眼中的百度QA》第一篇:百度QA的特点与核心价值(下半部分)51Testing软件测试网G!ww\x6I

曾有多位互联网测试友人网上问我:“百度是如何进行面向互联网的快速测试的?”对于这个问题,我最大的感受是互联网研发速度与质量的平衡让百度的QA必须持续通过测试技术的改进来实现该目标,靠智慧的测试而不是加班来同时满足进度与质量的需求。为了满足这些需求百度质量部有大型测试平台如百度TIP(Test in production)系统、百度众测平台、百度MTC、分布式并行自动化测试等支持大多数产品组同时获得研发速度加快和研发质量提升的收益。我个人认为百度TIP应该是国内在beta测试领域做得非常智能和系统的beta测试系统,可大大提升beta测试的效率和质量。而百度众测平台则是国内第一个也是规模最大的众测社区,依靠互联网上的热心用户资源帮助产品尽早发现更多用户场景特有的问题,减少了百度QA测试时间资源和测试物料的投入,值得国内各公司借鉴如何更好地把用户吸引进来参与beta测试,花点钱是必须的,空手套白狼是不可能的,但是投入产出比是值得的。百度移动云测试MTC平台则通过对已有测试物料和测试资源的共享管理及自动化应用帮助各产品APP测试缩短了在兼容性测试领域和性能测试领域的测试时间,并且让各产品APP获得更广的测试覆盖从而获得更高质量的APP

h)^D H*Oxk0

除了这些公司级的测试平台帮助各产品QA加快测试速度外,在日常的测试工作中一线百度QA还会主动积极学习和广泛地应用业界优秀的测试技术:持续集成、code review实践、静态代码自动测试工具、环境一键搭建、监控系统、分布式并行测试、探索测试等都在大多数产品组普及落地,希望靠先进的技术手段生产力来提升测试效率,缩短研发测试周期。据我所知百度质量部的探索测试在国内应该是应用产品范围最广的,从windows客户端、移动APPweb产品都在例行应用,探索测试几乎覆盖百度所有产品线,应用和实施探索测试的QA数达到上百人以上,涌现出不少内部探索测试教练,实施了探索测试的产品在没有增加测试周期和测试人力的前提下能提前发现更多问题减少漏测,部分产品探索测试发现的问题数所占比例已达30%以上,提升了发现单个缺陷的测试效率。51Testing软件测试网/^N0v*e Yz5bl

我个人认为对比靠延长工作时间和减少必做测试类型来加快研发速度的做法,靠主动持续应用各种新测试技术实践和成果是一种更可持久更科学更人性化的做法。关于百度如何进行“快测试”的咨询,我想这里已给出了一个已验证的解决方案了,希望值得各位同行借鉴和思考。

&nyB6NH$O D[0

  对于当前很热门的“大数据”及大数据如何测试?我觉得百度有些实践值得大家了解,给大家一些大数据测试的启发思路。 因为百度天生就是一个大数据公司,百度大数据系统的复杂度很高导致一直要求百度的QA既要保证高负载数据处理系统的稳定性、还要挖掘大数据中的badcase,尤其要擅长算法的测试。在保障高负载数据处理系统的稳定性领域,既有“线下百度”这样集系统化的稳定性测试方案与监控系统为一体的专项测试系统,也有不少申请了专利的可靠性测试工具来解决稳定性测试中异常构造和测试流量构造的问题。同时几乎所有产品线都通过百度的大型后台系统的稳定性测试实战培养起了该领域的测试高手。当然我也受益于百度的稳定性测试工作,通过为某百度第二大流量的产品进行稳定性测试方案的改进,在这里真正地把我过去在可靠性测试、压力测试、长时间测试领域的经验系统地结合起来形成了我自己完善的稳定性测试模型,并通过大数据处理系统的测试应用检验了我的稳定性测试模型的完整性,确保有各种测试方法可提前发现所有可产生稳定性问题的风险。51Testing软件测试网rOW1iz$c2S

另外为了更好地对大数据时代的数据挖掘和推荐效果算法进行效果评估,而不仅仅只是进行新算法程序正确性验证,百度的QA们还积极应用机器学习的思想、算法和工具对诸多产品的推荐效果算法进行产品算法集有效性的自动化评测,各产品线QA们设计的badcasse自动化挖掘系统在很多产品都能达到85%-95%的准确性,提供大量的量化数据帮助产品的算法设计者重新优化算法,而不只是修改算法的程序bug。同时为了更早更快更准地体现算法效果测试的价值,有的QA还积极进行该领域的其他创新,诸如:网页搜索的QAbadcase自动化挖掘系统与百度众测结合后大大减少了研发人员大规模分析与定位badcase的成本。图片搜索的QA甚至实现了线下badcase自动挖掘的算法,突破了搜索业界传统依靠线上用户数据进行用户体验测试的限制,能在大数据产品上线前未获得用户数据前就提前自动发现大量的badcase数据,为用户提供更好的推荐结果。大数据领域的测试涉及很多,由于我个人所见有限,就先给大家分享到这里。

'RT2g&_.O3Y X @7iTv0

 51Testing软件测试网S}o*A"g8TtkE

  如果非要我用一句话来总结百度QA的特点那就是:“持续技术创新与积极学习”。

M/u1j(a!y:{su0v0

 51Testing软件测试网6Nb+n7d ZiB%j*yl

平时在微博上测试同行们常讨论QA的核心价值是什么,甚至常有开发领域的老兵也来参与辩论。当然在百度内部也会有关于QA核心价值的讨论,从我了解的情况来看百度QA的核心价值在内部已得到了一些共识和不可替代性的证明。

(a,TpJ'`2L0

 

X K K;sl8b~;\x0

百度QA的第一个核心价值是:全流程质量保障中心

G6m:F)DjtJ6];O9@0

全流程质量保证确保所有百度产品的程序质量。从需求/设计/编码/产品发布的全流程都会有QA介入并提供各类质量保障手段。从尽早发现问题,到缺陷预防,到减少发布后遗漏问题的影响都是百度QA投入和支撑的目标。百度产品的全生命周期的质量保障是百度QA的首要工作目标,也是在百度不可或缺的核心价值,大部分的QA都一直为将漏测率降低到千分之几,甚至是零漏测长期进行着持续的测试创新和技术改进工作。

+T c)iPR.hC0

 51Testing软件测试网f WVe5oW^[6{jZ

百度QA的第二个核心价值是:公司用户体验测试技术能力中心

c^&NK1q0

前面所介绍的百度QA的工作范围和工作目标不只是传统tester所涉及的内容,他们被要求不仅要发现程序的错误,还要发现产品效果的问题,要求对用户体验质量全面负责。所以,百度QA除了广泛应用各种软件测试技术帮RDbug还会积极进行产品的应用效果评测工作为PM提供用户体验方面的缺陷,badcase自动化挖掘系统、百度众测平台等都是这方面的典型代表。我觉得从这点来看百度QA的用户体验定义的覆盖含义远超过了很多人所认知的易用性感受。百度QA不只关心程序错误这一点突破了许多公司目前对tester的限定,因此我建议各公司的tester们应该更积极主动的行动起来,在公司内部开展对产品业务有效性的评测而不仅是正确性的评测,因为只有这样才是真正的产品测试,而不仅是软件测试,测试者的价值能够获得更多的体现。51Testing软件测试网)^k Yq&Ge-c'c

 51Testing软件测试网$L s}9c[V

百度QA的第三个核心价值是:公司研发效率提升能力中心51Testing软件测试网6yuh%n:F,jr/`ch

百度QA们从最开始关注如何提升测试过程的效率,到现在考虑如何通过提供研发辅助工具和流程改造,提升公司整体的研发效率。我看到的是除了百度质量部层面的质量工程中心、还有产品线层面的EP专职团队、以及分布在各产品组的QA们都在积极贡献各种提升测试效率和开发效率的工具及系统。百度TIP系统、持续集成等是研发流程层面的典型代表,分布式并行测试系统、各种代码自动扫描工具等是测试效率提升的典型代表,提供给UE的单测工具FIS、提供给RDUT技术支持服务则是研发效率能力提升的另一种形式。我认为在研发效率提升方面,百度的QA们担负起了最大的职责和贡献了最大的价值。因此各公司的tester们如果要跳出测试价值的狭义定义,可以考虑参考百度QA的工作模式,积极担负起公司研发效率提升的担子。

IE7P@{Z oN5a"R!h4F1X0

 51Testing软件测试网-o"M/MMV M_

百度QA的第四个核心价值是:百度技术部的人才“黄埔军校"

P-d+f2e8N{'Z6_8}0} m0

在很多公司测试部或质量部都是向各部门培养人才的输送部门,这是因为测试工作的综合性让很多测试者获了全面的锻炼。成为一个懂技术的产品经理,成为一个懂质量的研发人员都是测试人员转岗的优势。不过在百度我看到这里的QA在质量部内部得到了更多综合性的锻炼,不依靠转岗也能在质量部内部专注做产品研发、做产品经理。因为有的QA团队本身就在做产品,承受着做产品的质量标准压力,如百度移动云MTC本身就是百度移动云战略产品的一部分,百度众测也是一个完整的互联网产品,QA们在其中担任起了互联网产品经理,互联网产品运营,互联网产品研发角色,能参与这些项目的QA是比较幸运的,这些经历对他们未来的发展都是一次很全面的锻炼。同时前面谈到QAMRD到产品发布后的全程介入工作,也使得QA能掌握大多数PM的技能和更深入的了解产品的完整生命周期成为“半个PM”。因此QA的发展空间和路径是很广阔的,关键看自己在公司内部如何去推动,如何去影响周边团队,让自己的工作范围扩大的更多。没有人说“你不能做什么?”只有自己内心限制了自己“不能做什么”。从这点来看,百度的QA玩得还挺“风生水起”的,希望国内其他公司的测试人员们能跳出原有思路,扩大自己的影响范围。

ud_ A~)O0

 51Testing软件测试网q(_ e'z4rY5}

   第一篇文章就先写到这里,关于博客中提到的一些测试平台和测试观点,意犹未尽的地方很有很多,我会尽快在后续的篇章中给大家进行更详细地干货介绍。最后说明下:此次分享我没计划介绍百度的自动化测试框架怎么做的,不是因为百度没有自动化测试,而是因为自动化测试的各种技术已不是百度QA的主要能力瓶颈和测试技术短板。至少我看到百度内部最优秀和最有能力的高阶QA们目前大多都投入在非自动化测试领域的其他测试难题的解决上与测试技术创新上,这个共性倒和华为的测试专家们很像,因为华为内部的高阶测试专家们近些年大多也都重点关注在非自动化测试领域。在一个务实重视产品优先、真正理解工程技术的公司中QA的工作和价值不仅仅是自动化测试,还有更多非自动化测试技术领域值得测试牛人们去研究和探索,百度是这样,华为也是这样。

A7~,v-J,v W6\B3Hz_1k0

 

8d4pr_J"vv6|0

TAG:

q165527560的个人空间 引用 删除 q165527560   /   2015-06-19 15:58:36
5
引用 删除 wuxiaofang07   /   2015-05-27 16:41:36
5
pandaxipeng的个人空间 引用 删除 pandaxipeng   /   2014-01-14 16:17:57
3
引用 删除 loope   /   2013-12-14 21:43:30
5
chenyujoe的个人空间 引用 删除 chenyujoe   /   2013-07-25 12:01:17
5
老曲的小窝 引用 删除 jetqu   /   2013-04-25 10:48:33
5
linky521的个人空间 引用 删除 linky521   /   2013-04-23 17:40:34
5
xin_晴的个人空间 引用 删除 xin_晴   /   2013-04-10 10:07:41
您好,我是51Testing软件测试网的编辑,您的本篇博文被推荐至51Testing软件测试网首页发表:http://www.51testing.com/html/68/n-843768.html
感谢您关注并支持51Testing博客,期待您更多的优秀原创博文。
在劫录 引用 删除 omg   /   2013-04-09 21:48:17
感谢分享,不知道有没有违反保密协议。 开个玩笑,非常好的文章,期待后续。

这种氛围的确很理想。已经融入了很多敏捷的思想精髓了。羡慕嫉妒恨。

个人抛点砖块,后续文章的期望(厚着脸皮说说,不怕不被采纳,不怕他人笑话):

1. 建议还是可以讲讲自动化测试,偏重于跟大众认识的自动化测试的区别和百度自动化的方向、目前的水平,比如,百度里面,类似基于界面层面的自动化(e.g. Selenium)的使用比率,是否是重心,因为感觉目前很多人还是在学QTP等类似自动化工具。如果能给大家说说百度里面的发展情况也不错。

2. 另一个兴趣点是,Test in production,这块具体是怎么做的,重点的是什么,策略是什么。希望JACK能有文分享分享。

3. 另外ET和以用户角度的测试,相关如何管理的。
spf724047682的个人空间 引用 删除 spf724047682   /   2013-04-09 16:43:36
引用 删除 Katero   /   2013-04-09 15:26:46
看了之后 脑袋里 都是浆糊 没有干货
skchao1111的个人空间 引用 删除 skchao1111   /   2013-04-09 14:57:55
收下了肯定有用,拿分走人了。
skchao1111的个人空间 引用 删除 skchao1111   /   2013-04-09 14:56:58
5
引用 删除 bloodboyvr   /   2013-04-09 14:37:47
收获很大!感谢Jack!
引用 删除 bloodboyvr   /   2013-04-09 14:36:55
5
引用 删除 dod042   /   2013-04-09 14:19:49
5
散步的SUN的个人空间 引用 删除 散步的SUN   /   2013-04-09 12:34:24
5
马不停蹄的学习 引用 删除 yangyang0326   /   2013-04-09 11:17:50
马不停蹄的学习 引用 删除 yangyang0326   /   2013-04-09 11:17:38
5
 

评分:0

我来说两句

Open Toolbar