让我们思考几个常见的问题Q?/p>
软g试的目的是什么?
开发h员能否构建出没有Bug的完YӞ
h人员和开发h员是什么关p?
软g试能否保证软g质量Q?/p>
先闭目冥想五分钟吧,然后可以试着回答上面的问题?/p>
计算机先?Maurice Wikes 回忆?1949 q他在英国剑桥工作的情ŞQ在拖着打孔U带上楼l雏形计机 EDASC 装蝲E序Ӟ他看C(jin)自己的未来:(x)
我强烈的意识刎ͼ生命中剩下的好日子,都将耗费在给自己的程序找错误上头?/p>
Maurice Wikes告诉我们Q没有完的软g?/p>
我曾l写q一荐书文Q推荐了(jin)温伯格技术思想三部曲中的?a color:="" text-decoration:="" box-sizing:="" style="margin: 0px; padding: 0px; color: #3e62a6; outline: 0px;">颠覆完美软gQY件测试必ȝ道的几g?/strong>》。在q本书里Q温伯格也告诉我们,没有完美的Y件。所有的开发和试人员都应该读读那本书?/p> 温伯格在《颠覆完Y件》中几乎讨论所有常见的与Y件测试相关的概念、问题和指导思想Q所以,在这文章里Q我只能来吐槽啦Q我从以下几方面列一些常见的现象Q希望能引v大家的思考?/p> 试和开发的关系 程与标?/p> 资源 态度 试和开发是对立的吗Q?/p> 从处理Bug的角度看Q似乎可以这么说?strong box-sizing:="" style="margin: 0px; padding: 0px;">开发h员既生代码Q也生Bug试和开发的关系
在现实中Q很多测试团队和开发团队也正是因ؓ(f)q一点而搞得关pM和,甚至真的对立h。请回想一下你周围发生的与开发和试相关的事儿,看看有没有遇到过下面的情景:(x)
开发说Q测试净N?ch),客户跟本不可能像他们那样使用软g
试_(d)问题L?x)在看似极端的条件下产生Q用hL?x)不l意触碰到看似极端的不可能出现的条g
开发说Q测试花在异常情况下的精力比试LE还多,不知道轻重缓?/p>
试_(d)开发从来不考虑试的感受,q测都不就扔给我们
开发说Q我都测?jin),q要试人员q什?/p>
试_(d)q么明显的问题(sh)们都不测一下,把我们测试当垃圾桶啊
……
许许多多cM的问题,让开发和试的关pM扑朔qL(fng)、相q杀走向对立。我见过开发和试搞冷战某人遇见某Z脸而过Q也见过试l理和开发经理打Ӟq见q高层领导故意让试团队和开发团队关pȝ张以样可以提高测试效率也能给开发压力最l会(x)产出更高质量的Y?#8230;…
实际上,试和开发拥有同一个目的:(x)让Y件更完美。测试和开发的关系Q是一个问题的两面Q应该是相辅相成和^共处的。测试不是ؓ(f)?jin)?xi)刺儿Q他提出的问题(sh)不针对生产Y件的开发h员,而仅仅是在努力想让开发h员的产出物看h更好用。只要开发不测试提Bugq个行ؓ(f)看成针对个h的行为,一切就有了(jin)好的前提?/p>
否定软gQƈ不是否定开发Y件的?/strong>。这是开发和试都需要明的一个原则和前提?/p> q有的h认ؓ(f)开发和试之关pȝ似皮与毛Q皮之不存毛焉附?所以有的开发也?x)因此而有优越感:(x)没我们写软gQ你们测试早下岗?jin)!可是Q开发不写YӞ开发也下岗?jin)Ӟ 感谢开发的不完,让测试可以有事可做ƈl就慧眼?/p> 感谢试的认真细致和耐心(j)体脓(chung)Q让开发可以发现自q不完ƈ有机?x)提升自?#8212;—那些说我软g不好的,都是Z(jin)我好?/p> 别动我们试的服务器Q你们自己搭一个! 我们没环境,不用你们的用谁的Q?/p> 谁把我们的测试手机拿C(jin)Q你们申请一个嘛Q老来占我们设备?/p> 谁在用我们的账号Q招呼都不打Q我要用Q赶紧退出来Q?/p> 有时开发和试之间也会(x)有资源上的冲H,要有努力的有创造性的解决Q我可以负责d_(d)装黑Ҏ(gu)不是好办法)(j)Q?strong box-sizing:="" style="margin: 0px; padding: 0px;">不要让大家伙的工作卡在环境上Q这是管理者要解决的基本问?/strong>。我见过很多非常的一U经理,在现实制U下Q主动把自己的手机、iPad都A(ch)献出来当做测试设备。这也是解决资源问题的一U办法哦?/p> 你n边的人员?sh)(x)这么抱怨吗Q?/p> 开发根本不看我们的试用例Q评审邮件从来就不回?/p> 我们一报BugQ开发就说用h本不可能q么用,q说不知道我们怎么?x)这么?/p> 送测单里Ҏ(gu)不写试范围或者寥寥几句跟没写一?/p> 开发调整设计从来也不告诉我?/p> Z么品经理和UI只和开发讨论需求变_(d) Z么发布计划里不给试预留试旉Q?/p> Z么开发写完代码测都不就扔给我们Q?/p> Z么客户那里发C(jin)问题老问是谁的、ؓ(f)什么没出来? 试老是一C吭就把Bug优先U设|ؓ(f)Major 试L把大量时间花在用h本不可能用到的功能上 试分不清哪些什么是重点Q你l他说他q老是一堆道理这?jin)那?/p> 试提的BugQ现象描qC不准,重现步骤也没有,有的Ҏ(gu)q道是不是误操?/p> 试老来打断我,一?x)儿叫一下一?x)儿叫一下,Ҏ(gu)没办法专注开?/p> jira上的Bug重复率太高,一个问题提N遍,N׃能合q一下? 试发现BugQ一声招呼都不打q接告诉老板?jin),搞得我很被?/p> 试是专门?xi)刺儿的Q有劲不往正地儿Q你倒是测用户常用的功能啊 那么单的Bug都能出到用户那里,真不知道试怎么的 开发老嫌试报告数据不漂亮,逼着我们调整 OkQ如果你w边的开发和试从来没有q类似的问题Q那很好Q恭喜你Q看来你们的团队人nice协作也很畅Q棒哒?/p> 假如你n边充斥着q样嘈杂的抱怨,那说明什么呢Q开发、测试、发布这一套流E有问题Q还是团队缺乏明的指向来引导大家向U极、有效的行ؓ(f)靠近Q?/p> 程和标准L有待解释的,再好的规则,歪嘴和尚也能把它忉|…… 我们随便?xi)一个问题吧Q?strong box-sizing:="" style="margin: 0px; padding: 0px;">Z么开发写完代码测都不就扔给我们资源
程与标?/h3>
E序员(sh)(x)_(d)我都一遍,q要你们试做什么?
试?x)说Q你都不测Q冒烟都q不?jin),有没有责d(j)Q?/p>
E序员说Q要我写试用例Q搭各种环境Q遍历各U正常、异帔R辑Q我q有没有旉写代码了(jin)Q?/p>
试?x)说Q我们测试是垃圾桶吗Q什么烂玩意儉K直接扔给我们Q我们的旉那么不值钱Q?/p>
开发会(x)_(d)试本来是q这个的Q你不测谁测Q?/p>
……
像这L(fng)问题Q能制定一个标准,说明什么样的逻辑开发要自测覆盖什么样的逻辑可以交给试来测Q能M条三八线吗?
不能。所以,q个时候,靠谱的一U管理者就昑־很重要。如何创造性的发现适合团队的方法来让大安畅地协同工作Q比标准、制度更重要Q这往往依赖于技术管理者的能力和团队成员的意识。没有普适的Ҏ(gu)Q只有适合q个l织的、此时此地的{略Q加油吧Q在战斗中摸索出最适合当下的道路?/p>
那什么是靠谱的一U管理者呢Q?/p>
温伯根{成为技术领D》一书中寚wD责的定义如下Q?/p>
领导的职责就是创造这样一个环境,每个人都能在其中发挥出更多的能力?/p>
如果一个技术领导带领的团队Q大部分人都能专?j)做与其能力适配的事情而不用整天(chng)在与本节前面所列类似的问题里,那他基本上就是比较靠谱?jin)?/p>
至于像给试预留多长的测试周期、调整设计要不要通知试、需求调整要不要试参与{问题,合理的流E和标准可以起到很大的辅助作用,技术领D只要依据合理的制度Q引导大家有效参与,可以化解?/p>
场景一Q?/p>
试MM寚w猿说发现?jin)一个Bug? 阿猿矢口否认Q不可能Q绝对不可能Q? MMQ真的有BugQ你q来看一下! 阿猿Q我都不用看Q在我这儿好好儿的? MMQ你来看一下嘛…… 阿猿Q看什么看Q肯定你环境问题Q动什么东西了(jin)吗?重启?jin)吗Q?/pre>场景二:(x)
试MM惛_jira上提个BugQ先在QQ上对阿猿_(d)(x)有个BugQ你q来看下Q? 阿猿Q忙着呢,焦头烂额的? MMQ一分钟都用不了(jin)Q你来看下吧? 阿猿Q思\一打断׃好恢复了(jin)Q等?x)儿Q? MMQ你不看我提到jira上了(jin)啊? 阿猿Q随便,你不是爱提Bug嘛?/pre>场景三:(x)
试MM呼叫阿猿Q阿猉K猿,E序又崩溃了(jin)Q快来看看! 阿猿慢腾腑֜赯nq来Q鼠标点几下Q看不出来什么问题,你怎么操作的? MMQ这L(fng)一下,那样Q这P……回R……? 阿猿Q重C?jin)啊Q你惛_法重玎ͼ重现?jin)再叫我Q我忙着呢? MMQ?#8230;…我曾l画q一张暴漫,?#8220;她发C(jin)一个Bug”为题发布在微信订阅号“E序视界”里,再现cM的场景,感兴的可以在订阅号内回?0019查看Q点击订阅号底部的帮助菜单里?#8220;所有文?#8221;子菜单也能找刎ͼ(j)?/p>
开发和试的日常工作中Q上面的情景不断上演Q这其中有一部分原因来自态度。我们有时还能听到类g面的话:(x)
你Bug里的现象描述Ҏ(gu)没用
你根本就没理解这个逻辑Q给你说不清?/p>
试什么都不懂……
你听我的Q我让你怎么你怎么?/p>
你这U测法儿Q再好的软g都经不v你折?/p>
用户Ҏ(gu)不可能这L(fng)Q你们整来整d瞎耽误工夫
一轮都没测完,你们q老板说可以按期交付没问题Q?/p>
你们安排计划时根本不考虑试Q三天,三天怎么可能得完!
……
有时Q有一些开发h员(sh)(x)用技术优势藐视测试,认ؓ(f)试工作技术含量低Q内?j)认为测试是附属没地位,说话׃太客?#8230;…试?x)感觉到Q反q来也会(x)对开发有意见……p么,从相敬如宑ּ始走向嫌怨丛?#8230;…
有个朋友的QQ{档是Q?strong box-sizing:="" style="margin: 0px; padding: 0px;">没有自我Q只有大?/strong>。我琢磨Q放在Y仉目里Q也挺适用的?/p>
其实Q开发和试拥有共同的目的:(x)生高质量Y件。具体说Q每一个品、项目、版本都有明的目标Q这些目标是属于开发和试的,是大家的。我们把共同的目标牢记在?j),摆在首位Q我们还要想着别h所做的一切,都是针对软g本nQ都是在为目标而努力,q样心(j)qx(chng)和多?jin),容易从当下的惔g脱出来Q求同存异共同前q?/p>
作者:(x)foruok 微信订阅?#8220;E序视界”(programmer_sight)
原文Q?a target="_blank" style="margin: 0px; padding: 0px; color: #3e62a6; outline: 0px;">CSDN