IT技术博客大学习 共学习 共进步

软件测试工程师的职业素质

闫鹏 blog 2010-09-09 22:06:23 累计浏览 4,941 次
本机暂存

  记得以前面试过一个女孩,她认为软件测试就是点击网页,囧,作为一名软件测试工程师,我当时真是无地自容啊。相信很多人都把这个职业想象的非常简单,作为软件测试工程师的我,是有必要普及一下软件测试的童鞋都需要在哪些方面提高自己的。

  1.分析能力。软件测试的核心其实应该就是设计测试用例了(具体啥样的用例设计,请参见《什么样的测试用例是好的》),而设计测试用例,就是依赖与分析能力了。这里我们不说那些常用的设计方法,从一个稍高的层面上来讲,可以说就是怎么将一个复杂的系统进行抽象,分析拆成几个不同的维度,结合维度可能出现的情况进行有选择的组合,以最小成本获取最大的收益。无法将一个复杂系统拆解成简单的维度,是没法做好用例设计的

  2.编程语言。语言其实就像说话一样,只不过我们常说的英语日语之类是与人沟通,计算机语言就是与计算机进行沟通的。对于测试工程师来说,精通一门语言,熟悉其它几门语言是有必要的。对于不同语言编写的被测程序,是有不同特点的,如果对实现的语言不了解,无法进行白盒测试,没法看代码diff(结合代码diff做测试)来提高效率。对于特点不了解,可能也会导致自己漏掉部分内容。

  3.设计能力。不要认为设计能力就是开发工程师的事情,拥有好的设计能力,就可以在设计评审的时候多提意见,促进开发工程师使用好的设计,不仅对开发有好处,对测试也是很有好处的。这样才能防患于未然,不仅自己的劳动力,也节省团队的劳动力。

  4.对业务的理解。对业务的理解越充分,就越能够理解最终用户的需求,促进产品设计使用好的方式,促进产品成功。难道你想做一大堆不成功的项目么,那样是多么没有成就感的一件事啊。

  5.自动化相关的考虑。随着项目越来越多,系统的测试项目也会积累的越来越多,每次有新功能了,难道要用手工来回归一下原有的case么。自动化测试是提高回归测试效率的唯一解决方案(如果你说还有解决方案就是不回归,我…),以高效率促进高质量,才是一个良性循环的发展方式啊。

  嗯,以高效率促进高质量,我觉得很有很有道理。

建议继续学习

  1. 谷歌是如何做代码审查的 (累计阅读 6,602)
  2. 一个程序员的血泪史 (累计阅读 6,181)
  3. 加班与效率 (累计阅读 6,103)
  4. 献给有裸辞想法的朋友们 (累计阅读 5,482)
  5. 从Code Review 谈如何做技术 (累计阅读 5,103)
  6. 给程序员们的工资报价提醒 (累计阅读 4,781)
  7. 工作在钱少事多人累的小公司里 (累计阅读 4,740)
  8. Facebook是如何开发软件的 (累计阅读 4,740)
  9. 一个小公司老板的日常管理,希望能让创业的朋友学到 (累计阅读 4,341)
  10. 用(Hudson+Subversion+Ant+JUnit)搭建了个持续集成(Continuous Integration)环境 (累计阅读 4,080)