SidelightofLife 2016-07-15
周日参加完公司团建,回家路上拼到一个IT界的老司机,他和几个朋友组件团队承接开发项目,知道我是做测试的,问了我一个问题:
“你们大公司的测试都做什么?”
“测试应该不好模仿吧?”
刚开始我也不清楚他的目的是什么,经过几个收敛性的问题,确认他遇到的困难:
1、 曾经一个项目,客户验收的时候发现多个低级错误,他觉得很没面子,客户信任度也遇到了问题。
2、 随着移动互联网的兴起,他们团队自己做的一个APP(包括运营)问题太多,用户丢失严重。
3、 自己不知道怎么测试,开发完成后团队内部交叉测试,问题(严重问题)仍然很多。
4、 开发不愿意做测试,好吧,这是人之常情,招聘过一个比较LOW的测试,成本太高,效果也不好。
了解这些后,我讲了一件事,我一个朋友跟我说:
“我喜欢玩LOL,已经玩了X年,天梯排名XX,特别喜欢LOL,想去你们公司做LOL的测试,帮我推荐一下好吗?”
那么问题来了?LOL打得好就能做测试吗?显然不是。测试是技术工作,不是在屏幕上点一点,随便用一下。
大致分为:
1、 需求分析、系统分析和测试分析,主要是通过经验找出风险,以及编写用例。代码review。所以经验和技术都很重要!
2、 测试用例执行,检查需求实现是否正确,质量好坏(交付影响有多大,是否达标)
3、 质量流程和标准的建立。这些可以提升效率降低成本。
4、 评测对比,主要是性能,可靠性,以及和竞品的对比测试,这需要投入大量的分析工作,也需要一些专业的方法和技巧。
大公司的测试投入是很大的,小公司可以根据自己的用户规模,用户对bug的容忍度来考虑测试投入。但是即使再轻量的测试,建议都要有完整的测试流程和测试用例,只有这样我们对质量和风险才能做到心里有数,不是简单的印象说质量好坏,即使有没发现的问题,也在可控范围。
要做到这一点,可以聘请一个工作两年以上的测试工程师,或者到程序员客栈www.proginn.com把测试工作外包。这两种方式各有利弊,第一种工作有持续性,技术可以沉淀积累,但招聘困难,成本很高。第二种比较弹性,只需要在程序员客栈发布测试需求,客栈上面大批测试工程师的经验都非常丰富,如果按照项目功能点结算,成本可控,单个项目的合作期也可以变长。