第一篇:测试工程师应该具备的素质
虽然主要是针对软件测试,但是有一些共通的地方,大家一起共勉
人是测试工作中最有价值也是最重要的资源,没有一个合格的、积极的测试小组,测试就不可能实现。然而,有一种非常普遍习惯,那就是让那些经验最少的新手、没有效率的开发者或不适合干其他工作的人去做测试工作。这绝对是一种目光短浅的行为,对一个系统进行有效的测试所需要的技能绝对不比进行软件开发需要的少,事实上,测试者将获得极其广泛的经验,他们将遇到许多开发者不可能遇到的问题。①、沟通能力
一名理想的测试者必须能够同测试涉及到的所有人进行沟通,具有与技术(开发者)和非技术人员(客户,管理人员)的交流能力。既要可以和用户谈得来,又能同开发人员说得上话,不幸的是这两类人没有共同语言。和用户谈话的重点必须放在系统可以正确地处理什么和不可以处理什么上。而和开发者谈相同的信息时,就必须将这些活重新组织以另一种方式表达出来,测试小组的成员必须能够同等地同用户和开发者沟通。
②、移情能力
和开发有关的所有人员都处在一种既关心又担心的状态之中。用户担心将来使用一个不符合自己要求的系统,开发者则担心由于系统要求不正确而使他不得不重新开发整个系统,管理部门则担心这个系统突然崩溃而使它的声誉受损。测试者必须和每一类人打交道,因此需要测试小组的成员对他们每个人都具有足够的理解和同情,具备了这种能力可以将测试人员与相关人员之间的冲突和对抗减少到最低程度。
③、技术能力
就总体言,开发人员对那些不懂技术的人持一种轻视的态度。一旦测试小组的某个成员作出了一个错误的断定,那么他们的可信度就会立刻被传扬了出去。一个测试者必须既明白被测系统的概念又要会使用工程中的那些工具。
④、自信心
开发者指责测试者出了错是常有的事,测试者必须对自己的观点有足够的自信心。如果容许别人对自己指东指西,就不能完成什么更多的事情了。
⑤、外交能力
当你告诉某人他出了错时,就必须使用一些外交方法。机智老练和外交手法有助于维护与开发人员的协作关系,测试者在告诉开发者他的软件有错误时,也同样需要一定的外交手腕。如果采取的方法过于强硬,对测试者来说,在以后和开发部门的合作方面就相当于“赢了战争却输了战役”。
⑥、幽默感
在遇到狡辩的情况下,一个幽默的批评将是很有帮助的。
⑦、很强的记忆力
一个理想的测试者应该有能力将以前曾经遇到过的类似的错误从记忆深处挖掘出来,这一能力在测试过程中的价值是无法衡量的。因为许多新出现的问题和我们已经发现的问题相差无几。
⑧、耐心
一些质量保证工作需要难以置信的耐心。有时你需要花费惊人的时间去分离、识别和分派一个错误。这个工作是那些坐不住的人无法完成的。
⑨、怀疑精神
可以预料,开发者会尽他们最大的努力将所有的错误解释过去。测式者必须听每个人的说明,但他必须保持怀疑直到他自己亲眼看过以后。
⑩、自我督促
干测试工作很容易使你变得懒散。只有那些具有自我督促能力的人才能够使自己每天正常地工作。
11、洞察力
一个好的测试工程师具有“测试是为了破坏”的观点,捕获用户观点的能力,强烈的质量追求,对细节的关注能力。应用的高风险区的判断能力以便将有限的测试针对重点环节
第二篇:软件测试工程师应该具备的职业素质
软件测试工程师应该具备的职业素质
沟通能力
–理想的必须能够与测试涉及到的所有人进行沟通,具有与技术人员(开发者)和非技术人员(客户、管理人员)的交流能力。
移情能力
–和系统开发有关的所有人员(用户、开发者、管理者)都处于一种既关心又担心的状态中。测试人员必须和每一类人打交道,因此需要对每一类人都具有足够的理解和同情,从而将
测试人员与相关人员之间的冲突和对抗减少到最低程度。
技术能力–
一个测试人员必须既明白被测软件系统的概念又要会使用工程中的那些工具,这需要有几年以上的编程经验,从而有助于对软件开发过程的较深入理解。自信心–开发人员指责测试人员出了错是常有的事,测试人员必须对自己的观点有足够的自信心。
外交能力
–当你告诉某人他出了错时,就必须使用一些外交方法,机智老练和外交手法有助于维护与开发人员之间的协作关系。
幽默感
–在遇到狡辩的情况下,一个幽默的批评将是很有帮助的。
很强的记忆力
–理想的测试人员应该有能力将以前曾经遇到过的类似的错误从记忆深处挖掘出来,这一能力在测试过程中的价值是无法衡量的。
耐心–
一些工作需要难以置信的耐心,有时你需要花费惊人的时间去分离、识别和分派一个错误。
怀疑精神
–可以预料,开发人员会尽他们最大的努力将所有的错误解释过去。测式人员必须听每个人的说明,但他必须保持怀疑直到他自己看过以后。自我督促–
干测试工作很容易使你变得懒散,只有那些具有自我督促能力的人才能够使自己每天正常地工作。
洞察力–
一个好的测试人员具有“测试是为了破坏”的观点,捕获用户观点的能力,强烈的质量追求,对细节的关注能
1.计算机专业技能
计算机领域的专业技能是测试工程师应该必备的一项素质,是做好测试工作的前提条件。尽管没有任何IT背景的人也可以从事测试工作,但是一名要想获得更大发展空间或者持久竞争力的测试工程师,则计算机专业技能是必不可少的。计算机专业技能主要包含三个方面:
l测试专业技能
现在软件测试已经成为一个很有潜力的专业。要想成为一名优秀的测试工程师,首先应该具有扎实的专业基础,这也是本书的编写目的之一。因此,测试工程师应该努力学习测试专业知识,告别简单的“点击”之类的测试工作,让测试工作以自己的专业知识为依托。
测试专业知识很多,本书内容主要以测试人员应该掌握的基础专业技能为主。测试专业技能涉及的范围很广:既包括黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法,还包括基础的测试流程管理、缺陷管理、自动化测试技术等知识。l软件编程技能
“测试人员是否需要编程?”可以说是测试人员最常提出的问题之一。实际上,由于在我国开发人员待遇普遍高于测试人员,因此能写代码的几乎都去做开发了,而很多人则是因为做不了开发或者不能从事其它工作才“被迫”从事测试工作。最终的结果则是很多测试人员只能从事相对简单的功能测试,能力强一点的则可以借助测试工具进行简单的自动化测试(主要录制、修改、回放测试脚本)。软件编程技能实际应该是测试人员的必备技能之一,在微软,很多测试人员都拥有多年的开发经验。因此,测试人员要想得到较好的职业发展,必须能够编写程序。只有能给编写程序,才可以胜任诸如单元测试、集成测试、性能测试等难度较大的测试工作。
此外,对软件测试人员的编程技能要求也有别于开发人员:测试人员编写的程序应着眼于运行正确,同时兼顾高效率,尤其体现在与性能测试相关的测试代码编写上。因此测试人员要具备一定的算法设计能力。依据作者的经验,测试工程师至少应该掌握Java、C#、C++之类的一门语言以及相应的开发工具。l网络、操作系统、数据库、中间件等知识:
与开发人员相比,测试人员掌握的知识具有“博而不精”的特点,“艺多不压身”是个非常形象的比喻。由于测试中经常需要配置、调试各种测试环境,而且在性能测试中还要对各种系统平台进行分析与调优,因此测试人员需要掌握更多网络、操作系统、数据库等知识。
在网络方面,测试人员应该掌握基本的网络协议以及网络工作原理,尤其要掌握一些网络环境的配置,这些都是测试工作中经常遇到的知识。
操作系统和中间件方面,应该掌握基本的使用以及安装、配置等。例如很多应用系统都是基于Unix、linux来运行的,这就要求测试人员掌握基本的操作命令以及相关的工具软件。而WebLogic、Websphere等中间件的安装、配置很多时候也需要掌握一些。
数据库知识则是更应该掌握技能,现在的应用系统几乎离不开数据库。因此不但要掌握基本的安装、配置,还要掌握SQL。测试人员至少应该掌握Mysql、MS Sqlserver、Oracle等常见数据库的使用。
作为一名测试人员,尽管不能精通所有的知识,但要想做好测试工作,应该尽可能地去学习更多的与测试工作相关的知识。
2.行业知识
行业主要指测试人员所在企业涉及的行业领域,例如很多IT企业从事石油、电信、银行、电子政务、电子商务等行业领域的产品开发。行业知识即业务知识,是测试人员做好测试工作的又一个前提条件,只有深入地了解了产品的业务流程,才可以判断出开发人员实现的产品功能是否正确。
很多时候,软件运行起来没有异常,但是功能不一定正确。只有掌握了相关的行业知识,才可以判断出用户的业务需求是否得到了实现。
行业知识与工作经验有一定关系,通过时间即可以完成积累。
3.个人素养[1]
作为一名优秀的测试工程师,首先要对测试工作有兴趣:测试工作很多时候都是显得有些枯燥的,因此热爱测试工作,才更容易做好测试工作。因此,除了具有前面的专业技能和行业知识外,测试人员应该具有一些基本的个人素养,即下面的“五心”。
专心:主要指测试人员在执行测试任务的时候要专心,不可一心二用。经验表明,高度集中精神不但能够提高效率,还能发现更多的软件缺陷,业绩最棒的往往是团队中做事精力最集中的那些成员。
细心:主要指执行测试工作时候要细心,认真执行测试,不可以忽略一些细节。某些缺陷如果不细心很难发现,例如一些界面的样式、文字等。
耐心:很多测试工作有时候显得非常枯燥,需要很大的耐心才可以做好。如果比较浮躁,就不会做到“专心”和“细心”,这将让很多软件缺陷从你眼前逃过。责任心:责任心是做好工作必备的素质之一,测试工程师更应该将其发扬光大。如果测试中没有尽到责任,甚至敷衍了事,这将会把测试工作交给用户来完成,很可能引起非常严重的后果。
自信心:自信心是现在多数测试工程师都缺少的一项素质,尤其在面对需要编写测试代码等工作的时候,往往认为自己做不到。要想获得更好的职业发展,测试工程师们应该努力学习,建立能“解决一切测试问题”的信心。
“五心”只是做好测试工作的基本要求,测试人员应该具有的素质还很多。例如测试人员不但要具有团队合作精神,而且应该学会宽容待人,学会去理解“开发人员”,同时要尊重开发人员的劳动成果——开发出来的产品。
第三篇:软件测试工程师具备的素质
大体上从事软件测试工作,要做好这项工作,就要重点着重培养一下自己各方面的素质。因为软件测试正在向工程级发展
基本素质
沟通能力、自信心、幽默感、记忆力<挖掘以往错误>、耐心、怀疑精神、自我督促、洞察力<发现重点>;
广泛的经验;
表达能力、问题描述能力;
会提问,会寻求Help;
逻辑思维能力;
团队协作能力;
处理日常事务的能力和处理突发事件的能力
专业素质
对于系统测试,把握需求是第一位的。对产品熟练,能够快速熟悉新的产品需求,很 强的需求理解能力显得很重要;
测试基础:明确测试流程中各个阶段的工作,对测试的认知程度,决定了测试流程管理 的规范性,测试工作的质量;
测试方案的分析设计能力、测试案例的设计能力(测试案例的覆盖率、优先级等);的使用(包括和测试执行工具,也包括开发工具的能力);
编程能力,知识,网络知识,操作系统知识;
团队协作能力,与各个小组之间的沟通能力;
测试管理,管理决定了工作质量。尤其是测试经理,需要管理团队测试的能力。一般的说,技术上的问题都不是问题,目前的软件更缺乏行之有效的管理。
第四篇:优秀的测试人员应该具备的素质
优秀的测试人员应该具备的素质:
1、探索精神:软件测试员不会害怕进入陌生环境。
2、故障排除能手:软件测试员善于发现问题的症结,喜欢猜谜。
3、不懈努力:软件测试员总是不停尝试。他们可能会碰到转瞬即逝或者难以重建的软件缺陷;他们不会心存侥幸,而是尽一切可能去寻找。
4、创造性:想出富有创意甚至超常的手段来寻找软件缺陷。
5、追求完美:他们力求完美,但是知道某些目标无法企及时,不去苛求,而是尽力接近目标。
6、判断准确:软件测试人员要决定测试内容、测试时间,以及看到的问题是否算作真正的缺陷。
7、老练稳重:软件测试员不害怕坏消息。
8、说服力:软件测试员要善于表达观点,表明软件缺陷为何必须修复,并通过实际演示力陈述观点。
软件:[广义]所有的软件系统都需要的基础知识包括:基本的编程能力、面向对象方法、操作系统、数据库、计算机网络……
[针对性]具体项目的业务知识
测试:测试基础知识、测试工具、自动化测试、测试的思维方式… … … …工程:软件工程、广度深度
师 :专业、敬业
第五篇:优秀的机械工程师应该具备的素质
优秀的机械工程师应该具备的素质
1.知识方面:
专业知识主要有理论力学、材料力学、运动学、热力学、流体力学、机械制图、工程材料、制造工艺、互换性与技术测量、机械原理、机械设计、电工学、电子技术基础、机械试验技术等。
2.基本设计方法和现代设计理论与方法知识
主要有机械结构强度、机械振动、摩擦学、设计方法学、机械设计学、优化设计、可靠性设计、工业设计、技术经济、价值工程等。3.有关专业知识
这里指与机械设计工程师所从事的专业设计有关的许多知识,可以说是对设计有关的许多知识,可以说是对设计对象本身及其相关部分的比较全面和详细了解的要求。例如设计对象的功能,可能遇到的工作条件和环境状态,通常采用的工作原理与结构组成,典型的或类似的已有机械产品,曾经遇到的或可能遇到的运行中专业方面的问题等。4.有关其他知识
例如计算机、信息、法律、知识产权保护、金融、市场营销、保险、谈判招标投标资产评估贸易工业经济管理国家有关立项及投资的相关政策等。技能方面
1.运算、设计、制图和实验的技能 2.创新技能 3.实际操作技能
4.技术经济分析和评估技能 5.计算机使用技能
6.获取分析和利用机械科技信息的能力 7.表达能力
8.业务组织管理能力
9.处理和解决各种相关问题的能力 10.科学研究能力 思维方面
1.正确的哲学思想 2.辩证思维和逻辑思维 3.设计构思 4.创造性思维 设计实践方面
机械设计者的实践和社会的实践