作为一名软件测试工程师,需要具备哪些能力?

标签: 作为 软件测试 工程师 | 发表时间:2013-01-28 21:49 | 作者:天顺
出处:http://www.zhihu.com/rss
通用技能上:
1.基本计算机知识(操作系统,数据库,通讯协议原理,熟悉至少一门编程语言)
2.基本软件测试知识(各种测试理论,测试方法论,测试用例编写,缺陷界定标准,软件质量评估)
3.简单项目管理知识

产品、系统认知:
1.熟悉所测产品功能,能够将产品文档内描述的UC转化成TC,这个最最基本
2.熟悉所测产品的一些隐藏需求或者功能(业务上的进阶能力)
打个比方,支付公司上一种新的支付渠道,熟悉业务的测试人员应当可以预见到这次升级可能会对前段界面、系统账务、各类报表等各个模块造成影响,从而一并纳入测试范畴。
要知道,很多时候,即便是接入这些渠道的产品经理,也不一定会在Prd或者UC中对这些可见影响项一一列出,这需要经验和责任心。

性格上:
1.有牛皮糖属性的为佳,越“不要脸”越好
测试工程师,在很多公司,和研发是有业务上对立属性的(虽然从宏观角度上来说,都是为了提高软件质量服务)。测试工程师提交的BUG越多,意味着研发工程师工作质量越差,需要返工的工作量也越大,甚至会影响绩效,所以测试工程师有时候很容易得罪研发部门。
一个可以相对坚持原则(比如3级BUG以上一定要改),又能拉下脸和不愉快的研发工程师保持较好关系的测试工程师,会对项目质量起到很关键作用。说到底,又能做事(发现BUG并督促修改),又会做人(该进的不让,该退的绝对给面子,最大化消除部门间矛盾)的测试工程师,是十分难得的。

2.有异想天开属性的为佳
这个只可意会,不好言传的。在我带过的团队里,的确有那种奇葩……经常会用令人匪夷所思的方式找出BUG,这是天赋。

3.会“偷懒”的为佳
这里的偷懒不是指上班发微博聊天混日子,而是能够利用已知资源对枯燥乏味的测试工作进行优化的同学。
说个实例:
我以前公司曾经上过一个“授信”项目,做过金融类项目的同学大家都知道。授信项目的测试用例真可以说是相当变态,随着账期、滞纳金率、手续费率、利息率、本金、还款情况的不同,可以衍生出无比多的用例,同时每个用例进行编写时,都要仔细根据规则计算预期结果的资金状况,非常费力。

咱部门一个小伙子,头一天晚上拿了PRD,第二天晚上就利用Excel写了一个固定某些账期下不同情况下的各项资金计算工具(有一些小BUG,无伤大雅)……大大减少了兄弟们按计算器的工作时间。这种“懒”员工,你是领导你喜欢不?

事情没完,在实际测试的过程中,我们发现一旦研发修改了BUG,会引发其他用例的大崩溃(这类项目真悲剧,牵一发动全身),每次版本升级我们都不得不进行全面的回归测试。
太坑爹了,这不是要命么?
聪明的测试同事们又想偷懒了,他们在数据库端写了一个数据匹配工具,每次新跑用例就拿正确的(已保存)数据文件自动去比对新产生的文件,自动返回比对结果。兄弟们再也不用每次回归都一行行打SQL去查数据了,棒极了。

在研发修改BUG之余,他们自己写了一套存储过程,可以实现数据的自动回归和增量备份,再也不用每次把所有数据擦光从第一个交易日跑起了,棒极了!

说了那么多,其实就一句话:干一行,爱一行。

-- 完 --

下载知乎 iPhone 客户端: http://zhi.hu/ios

相关 [作为 软件测试 工程师] 推荐:

作为一名软件测试工程师,需要具备哪些能力?

- - 知乎每日精选
1.基本计算机知识(操作系统,数据库,通讯协议原理,熟悉至少一门编程语言). 2.基本软件测试知识(各种测试理论,测试方法论,测试用例编写,缺陷界定标准,软件质量评估). 1.熟悉所测产品功能,能够将产品文档内描述的UC转化成TC,这个最最基本. 2.熟悉所测产品的一些隐藏需求或者功能(业务上的进阶能力).

软件测试的原则

- - CSDN博客推荐文章
 在软件测试中有很多重要的指导原则,这些原则看上去大多是显而易见的,但是总是被我们忽略,作为虫师,我们当然应该把这些原则牢记于心,作为专业测试人员的基本素养. 原则1 测试用例中一个必需部分是对预期输出或结果的定义.  这条原则是软件测试中常犯错误之一,但是如果不按照这条原则进行,由于“所见即所想”这样的一个心里现象的存在,某个似是而非的错误结果可能会被当成是正确的结论.

文章: 软件测试转型之路

- - InfoQ cn
2010年12月31日,在网易从事了多年开发之后,依依不舍地离开,面临的是一个完全从零开始的全新职位:SQA,也就是tester. 保持某些系统的高可用性,是一些企业的重中之重,如何设计. 海量数据处理,海量视频分发,架构热点难点,尽在架构师峰会. ArchSummit全球架构师峰会报名启动. 当时对为什么被选择做软件质量保证,而不是继续在研发上进取,持有保留态度:凭什么要我转,不是别人.

软件测试中的心理学

- - 技术改变世界 创新驱动中国 - 《程序员》官网
软件测试是一项技术性工作,但同时也涉及经济学和人类心理学的一些重要因素. 在理想情况下,我们会测试程序的所有可能执行情况,而在大多数情况下,这几乎是不可能的. 即使一个看起来非常简单的程序,其可能的输入与输出组合可达到数百种甚至数千种,对所有的可能情况都设计测试用例是不切合实际的. 对一个复杂的应用程序进行完全的测试,将耗费大量的时间和人力资源,这样在经济上是不可行的.

软件测试用例编写建议

- - CSDN博客推荐文章
软件测试人员(SQA/SQC),做的最频繁并且最主要的活动之一就是编写软件测试用例了. 首先,请记住以下所有的讨论都是关于编写软件测试用例,而不是设计/定义/确认测试用例(TC).   这项主要活动有几个重要的关键因素,让我们先来大概了解一下吧.   A、软件测试用例要易于定期修改和更新.   我们生活在一个不断变化的世界,软件也不能免于变化.

软件测试知识库管理方案——大结局

- Ben - Taobao QA Team
淘宝测试团队的知识沉淀发展到今天,经历了无数风风雨雨,到现在各个产品线的沉淀方式,仍然没有完全统一,处于群雄割据的局面. 我们先简单看看淘测试的知识沉淀的发展历史. 在混沌初开的年代,大家基本都是用MS Word来编写沉淀文档,然后放在一个共享目录下面. 后来wiki概念兴起,产生了很多这一类型的web应用程序,MS share point(SP)是被普遍使用的.

8月AV-Comparatives杀毒软件测试结果出炉

- 建军 - cnBeta.COM
AV-Comparatives是来自奥地利的杀毒软件评测机构,在国际上享有盛名,是公认信得过的独立测试机构. 每月AVC都会更新动态测试结果,日前,8月份动态测试结果也出炉了. AVC的动态测试是测试恶意网站及其威胁拦截测试,所有杀软采用默认设置,并且当杀软弹出提示时采取的选择也是杀软默认给出的.

Web软件测试中数据输入的检查清单

- - InfoQ cn
检查清单(Checklist)可以帮测试人员节省时间,因为很多有效的方法并不需要每个测试人员重新发现,前人已经有了充分的总结,并做了大量的有效性验证,其次,检查清单可以帮助测试人员避免遗漏,人的记忆是有局限的,难免会有遗漏的地方,通过检查清单检查可以有效的防止遗漏. 最近,IBM工程师苏京刚 总结了Web软件测试中数据输入的检查清单,对Web测试人员提供了很好的参考.

如何开发高质量软件?及软件测试观点

- - 我的宝贝孙秀楠 ﹣C++, Lua, 大连,程序员
也许是因为我经常在twitter上鼓吹“代码质量来自code review和单元测试”,老赵的这篇文字 http://blog.zhaojie.me/2012/01/a-case-requirement-to-practice-unit-testing-or-tdd.html 也at我一下,抱歉的是最近欠债太多,正在着手完成答应侯伯薇的那篇关于appengine的文字.

Google软件测试之道之读书笔记

- - ITeye博客
以下是看完Google软件测试知道之后书中摘录以及整理的笔记.主要摘录自己认同的,有启发性,指导性的内容.并且适当对书中的内容做了一些整理,欲看全部内容请购买原版图书. 第一章:Google软件测试介绍. 1.Google的测试团队并非雄兵百万,我们更像是小而精的特种部队,我们依靠的是出色的战术和高级武器.