文章来源于网络,相关信息请单击:ISTQB培训 http://www.imbus.cn/
“从目前的行业情形来看,尤其是对于金融行业,要求测试员既要具备*的测试技能,同时也要具有一定的行业背景或者有一定的行业知识。我想知道,在整个软件测试过程中,为什么以及什么时候需要测试员掌握这些行业知识呢?”
首先,我们来看一下Danny R. Faught 对测试员的三围评测法。在聘用测试员之前,需要对其进行三方面的技能评测,那到底是哪三方面呢?
1)测试技能2)行业知识3)技术专长
毫无疑问,任何一个测试员都应该具备基本的测试技能,比如说手工测试和自动化测试。而具有常识的测试员甚至可以发现软件中绝大部分较为明显的问题,那么你是不是想说“这样的测试”就已经足够了呢?你会把这个只是做了“这样的测试”的产品发布吗?很明显,你不会这样做。在产品进入市场之前,你一定要向相关的行业*咨询意见。
在测试的时候,你应该把自己当作*终用户来进行测试。但是,每一个人的能力都是有限的,不可能同时成为上述三方面的*(如果你是上述所有技能的*,麻烦你告诉我一下,我一定会不择手段的把你挖过来,呵呵)。所以说,你不能保证你能完全了解每个用户的想法。用户对于其从事的行业会有更好的理解。你需要去权衡所有这些*性较强的操作,这样才能使产品的各个方面都能得到较好的处理。
目前,你可以发现不同公司在招聘测试员中,具有较好的*的背景知识甚至比有测试技能更重要。当前软件行业有个很好的趋势,就是很多*开发人员和具有*领域知识的人员正在加入测试行业。
我们还发现了一个更重要的原因,为什么*领域知识会被测试行业越来越重视。就像当你聘用一个刚出大学校门的学生时,你不能期望他们具有丰富的经验来完成测试工作。为什么呢?因为有经验的人员,他不管在行业知识方面还是在测试技能方面都有优势,同时他们对不同的问题有更好的理解,可以更快更好的将软件发布出去。
下面列出几种有代表性的行业:1)手机软件测试2)通讯软件测试3)网络电话测试4)通讯协议测试5)银行业务测试6)网络测试
如果你没有*的行业知识你怎么测试这些软件?总不能当你测试银行业务系统时,你只是知道测试界面、功能、安全、负载和压力吧?你需要知道用户对银行业务的需求、工作流程、金融背景知识、佣金公开等等,并进行相应的测试,*后只有你才可以说你的测试是足够了的 – 这就需要标的*的出现了。
以我现在的项目为例:我目前做的是搜索引擎软件的测试,在这里,我需要知道基本的搜索引擎术语和概念。很多时候,其他一些组员经常问我这样或那样的问题,比如说什么是“发布者”,什么是“信号器”,它们之间的区别是什么,以及它们分别是做什么的?你认为他们可以根据当前的在线广告和搜索引擎*优化来测试这个系统吗?肯定是不可能的。除非他们都很熟悉这些术语和功能才有可能。
当我更好的掌握这些背景知识时,我就可以写出更好的测试用例,执行更多的测试用例,还可以更有效的模拟*终用户操作,这就是明显的优势所在。
这里重点列出做软件测试需要的素质:● 测试技能● 寻找BUG的能力● *技能● 具有*的领域知识● 沟通能力● 会自动化测试技术● 编程能力● 思维敏捷,可快速领悟问题● 能承受较大工作压力……
还有很多很多没有列出来。此时你肯定会问我,我需要掌握所有这些技能吗?这取决于你自身的情况。你可以着重学习一种技能,或者成为某方面的*同时对其他方面也熟悉,或者均衡的学习所有的技能。现在是竞争的社会,你要确保自己可以很好的利用这一点。在你跳槽之前,*起码要确保你能成为某一方面的*。
如果没有足够的*领域知识,该怎么办呢?
公司可能会将你安排在任何一个项目,并且分配不同的任务给你。如果正好把你安排在一个你没有这方面行业知识的项目,你该怎么办呢?你要尽快的并且尽可能多的理解其中的概念。把自己想象成用户去理解这个产品,如果我是客户的话,我会怎么使用这个软件呢?如果可以的话,可以访问客户的主页,了解他们如何用这个产品进行工作的,从网上学习你要测试的软件所需要的行业背景知识,参加一些该行业发布的活动,结识一些这方面的*。或者在需要相关*背景知识时候,公司会给测试员提供内部培训。
在学习*领域知识中,没有什么特定的阶段。在你测试的每一个软件和每一个测试周期中,你都需要运用这些行业知识。