最近,其实是一直,在思考关于软件质量、测试以及QA这个工作的价值和发展相关的问题。除了看书和思考,也和很多人聊天,公司的朋友,还有网上的同行。从他们那里听到很多好的经验和见解。今天正好和一位资深人士(以下称为My Friend)聊天,觉得蛮认同他的一些看法。这里贴出一些聊天记录,和大家分享。不涉及隐私,应该还好,如果不小心伤及他人请原谅,因为有时候聊天的心态是“我喜欢激烈一点的有价值的看法胜过正确的废话”。聊天的东西比较随意和口语化,不过我觉得也是更直白的讲出了很多的道理。如果你有什么comments,也欢迎交流 :)
很多事情不会自然的变清楚,只有不算的去思考,去学习,还有最重要的,去交流。下面是今天看到的一句很深刻的话。
“不是笨,而是懒;不是懒,而是骄傲;不是骄傲,而是封闭。”
......
My Friend 说:
我个人觉得,做 QA 最好的结果是,专业的 Consultant
看专长在哪里
Ricky Q. 说:
你是说testing相关的consultant吗?
My Friend 说:
testing 领域很广
Ricky Q. 说:
恩,我的意思是说不是product domain相关的consultant?
My Friend 说:
testing methdology development, 像 tool design and development,像 database performance tuning
Ricky Q. 说:
是的,国外好像这样的蛮多的,有自己的著作,工具,甚至公司和业务
My Friend 说:
像 security assessment,像 tool evaluation and purchase
Ricky Q. 说:
嗯,是蛮多的
My Friend 说:
再大,可能就是 TQM, 一个公司可能只有一两个的 quality manager, 统看 operation 的 quality
可大可小
Ricky Q. 说:
只是目前大家的观念还没有把这样的专长当成是job track,或者说是还没有人能做到那么专深的程度
TQM?
My Friend 说:
total quality management
Ricky Q. 说:
哦
My Friend 说:
TQM 好像是从日本做起来的,他们的汽车工业吧。。。好像
Ricky Q. 说:
不过现在业界都要求测试要往开发周期的更前面走,去做 prevention
My Friend 说:
如果简单翻译成测试,大概就是事后做的,但是如果是模拟测试,就是在设计是就做 prototype 来 simulation test 了,那种才能 prevent
当然,根据过去的数据来修改 process 也算是 prevent 啦
不过,方法已经不同
其实,就是设计的时候就要做模拟测试啦
Ricky Q. 说:
嗯,是的,前段时间做个尝试,找了几个人把几个主流产品的最近release的所有install相关的tracker分析了一遍
发现还是有相当多的共性,算是fail pattern吧,觉得以后应该可以在design和设计case的时候做得更好。不过目前类似的尝试还很少
目前QA会很早期involve去参与讨论design,但是去prototype验证还做得不多
My Friend 说:
这些其实是该给 design 和 coding 的人,建立 design 和 coding 的 discipline, 但是现在才不会 garbage-in, garbage-out, 但是现在,大都是给 QA 做 test case, 一点鸟用也没有,
Dev/QA 比例不对,主因是 garbage-in 太多,如果 Dev 太过于 junior 还有理由,如果 Dev 很 senior, 就有很大的问题
哈哈,个人看法
Ricky Q. 说:
你觉得比例应该是怎样的?
My Friend 说:
QA 多是很浪费的
Ricky Q. 说:
呵呵,没事,我喜欢激烈一点的有价值的看法胜过正确的废话
My Friend 说:
这跟 Dev 的 senior 程度有很大的关系
Ricky Q. 说:
嗯,最近听了一个Google QM的演讲,他也是类似的看法
认为code出来本身就应该有很高的quality,而不是QA去测最基本的feature
My Friend 说:
只能说,Dev 越是 senior, QA 应该越是少
Ricky Q. 说:
我们的QA 现在大部分时间还是function测试,包括manual和auto,这样去研究产品,domain knowledge,竞争对手,测试工具和方法的时间都比较不够