软件测试需要的技能

2017-11-04 14:28:53 jazdbmin1639整理 软件测试技能 软件测试技能

软件测试技能树

Q1: 软件测试工程师应该具备哪些技能?

⒈ 测试专业技能
测试专业知识很多,本书内容主要以测试人员应该掌握的基础专业技能为主。测试专业技能涉及的范围很广:既包括黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法,还包括基础的测试流程管理、缺陷管理、自动化测试技术等知识。
⒉ 软件编程技能
软件编程技能实际应该是测试人员的必备技能之一,在微软,很多测试人员都拥有多年的开发经验。因此,测试人员要想得到较好的职业发展,必须能够编写程序。只有能够编写程序,才可以胜任诸如单元测试、集成测试、性能测试等难度较大的测试工作。
此外,对软件测试人员的编程技能要求也有别于开发人员:测试人员编写的程序应着眼于运行正确,同时兼顾高效率,尤其体现在与性能测试相关的测试代码编写上。因此测试人员要具备一定的算法设计能力。依据资深测试工程师的经验,测试工程师至少应该掌握Java、C#、C++之类的一门语言以及相应的开发工具。
⒊ 网络、操作系统、数据库、中间件等知识
与开发人员相比,测试人员掌握的知识具有“博而不精”的特点,“艺多不压身”是个非常形象的比喻。由于测试中经常需要配置、调试各种测试环境,而且在性能测试中还要对各种系统平台进行分析与调优,因此测试人员需要掌握更多网络、操作系统、数据库等知识。
在网络方面,测试人员应该掌握基本的网络协议以及网络工作原理,尤其要掌握一些网络环境的配置,这些都是测试工作中经常遇到的知识。
操作系统和中间件方面,应该掌握基本的使用以及安装、配置等。例如很多应用系统都是基于Unix、linux来运行的,这就要求测试人员掌握基本的操作命令以及相关的工具软件。而WebLogic、Websphere等中间件的安装、配置很多时候也需要掌握一些。
数据库知识则是更应该掌握技能,现在的应用系统几乎离不开数据库。因此不但要掌握基本的安装、配置,还要掌握SQL。测试人员至少应该掌握Mysql、MSSqlserver、Oracle等常见数据库的使用。

Q2: 软件测试工程师需要具备哪些能力?

通用技能上:
1.基本计算机知识(操作系统,数据库,通讯协议原理,熟悉至少一门编程语言)
2.基本软件测试知识(各种测试理论,测试方法论,测试用例编写,缺陷界定标准,软件质量评估)
3.简单项目管理知识
产品、系统认知:
1.熟悉所测产品功能,能够将产品文档内描述的UC转化成TC,这个最最基本
2.熟悉所测产品的一些隐藏需求或者功能(业务上的进阶能力)
打个比方,支付公司上一种新的支付渠道,熟悉业务的测试人员应当可以预见到这次升级可能会对前段界面、系统账务、各类报表等各个模块造成影响,从而一并纳入测试范畴。
要知道,很多时候,即便是接入这些渠道的产品经理,也不一定会在Prd或者UC中对这些可见影响项一一列出,这需要经验和责任心。
性格上:
1.有牛皮糖属性的为佳,越“不要脸”越好
测试工程师,在很多公司,和研发是有业务上对立属性的(虽然从宏观角度上来说,都是为了提高软件质量服务)。测试工程师提交的BUG越多,意味着研发工程师工作质量越差,需要返工的工作量也越大,甚至会影响绩效,所以测试工程师有时候很容易得罪研发部门。
一个可以相对坚持原则(比如3级BUG以上一定要改),又能拉下脸和不愉快的研发工程师保持较好关系的测试工程师,会对项目质量起到很关键作用。说到底,又能做事(发现BUG并督促修改),又会做人(该进的不让,该退的绝对给面子,最大化消除部门间矛盾)的测试工程师,是十分难得的。
2.有异想天开属性的为佳
这个只可意会,不好言传的。在我带过的团队里,的确有那种奇葩……经常会用令人匪夷所思的方式找出BUG,这是天赋。
3.会“偷懒”的为佳
这里的偷懒不是指上班发微博聊天混日子,而是能够利用已知资源对枯燥乏味的测试工作进行优化的同学。

Q3: 软件测试员需要哪些技能?

第一个问题,测试人员需要掌握哪些知识。
1 测试人员必顺熟悉软件开发流程。
测试需熟悉软件开发流程,重点掌握测试本身部分过程以及测试与各个阶段的接口,有哪些文档需要编写,编写的内容是什么。其它方面不需要很多细节都了解,那是QA和EPG的事。
2 测试人员必顺熟悉产品所涉及的业务。
测试人员主要的的测试还是功能测试,那怎么做好功能测试,在仔细、耐心的基础上还需要精通产品的业务。实际是往往项目组中的培训往不够的,我个人的经验是如果有条件能够参加需求调研的话是最好的。如果是产品化的产品有机会的最好去工程实施的一两次。
3测试人员技术的要求
测试技术的要求我就不多说了,大家关心的可能是开发工具,我个人认为测试人员必须精通一门比较大众化语言,如C、或JAVA,否则在测试驱动化测试时,就需要开发人员协助。以前我碰到这么一个需求“在个用户同时操作,一个用户插入十万条数据、一个用户UPDATE十万条数据,一个用户删除十万条数据”如果我们自己不能写点小程序,是很受制于人。还有必须对自己项目所使用的开发工具有所了解,要做到能安装、搭建、编译、调试问题(能找到错误点)。
4测试人员对于工具
现在网上测试工具很多,我看了很多人天天在说,学哪种好。我是根据测试不同需求去选一种比较大众化,适何目前情况的工具,比如果我就划分三种:测试管理、功能测试、性能测试。根据这三种去找适何的工具,学习并应用到项目里。
5测试人员基本素质
这点很重要,如果一个测试人员水平很高,但是他就是不做事,那有什么用。测试人员必须具备踏实、主动、仔细、钻研的素质。
踏实:追求好的待遇是每个人目标,但是必须对自己目前这个岗位的工作需做好,要想工作时间想个几个分钟,晚上回去想个够/
主动:寻找BUG要拿出追女(男)友的气势出来。

Q4: 软件测试工程师需要具备哪些技能

软件测试的工作就是不断完善一个软件产品的过程,在交到用户的手中的时候,这个产品必须是经过不断重复测试并且没有漏洞的,同时也是用户体验不断完善的过程。那么作为一名企业软件测试从业人员,需要具备哪些素质呢?
在这里将软件测试人员的能力分为几个方面来具体阐述,从不同的方面阐述作为一个软件测试人员所要具备的不同的能力,也为读者在学习过程中指明一个方向,而不至于舍本逐末。软件测试人员需要具备以下素质能力:
通用能力:
1.基本计算机知识(操作系统,数据库,通讯协议原理,熟悉至少一门编程语言)。
2.基本软件测试知识(各种测试理论,测试方法论,测试用例编写,缺陷界定标准,软件质量评估)。
3.简单项目管理知识。
4.语言表达能力、沟通能力,良好的表达能力是解决问题的开始。
对产品、系统的认知能力:
1.熟悉所测产品功能,能够将产品文档内描述的UC转化成TC,这个最基本的。
2.熟悉所测产品的一些隐藏需求或者功能(业务上的进阶能力)。
自身职业素养:
1.工作态度如何,是评价一个测试人员最主要的方面,一个高水平的测试人员(指纯技术能力)如果没有一个好的工作态度,在测试团队中有时候不但不能对测试工作起到推动作用,有时候还起到阻碍作用。
2.测试工作是一个烦琐的工作,如果你不是认真、细心,不怕麻烦的人,建议你最好不要进入这个行业,否则,最后难受的肯定是你自己。
3.随着测试工作日益专业化,原来的低水平测试人员越来越不能满足测试的需要,测试工具的使用,测试理论的更新,新技术的应用都要求测试人员要不断提高自己的水平。
团队合作意识:软件测试工作始终是一个团队完成的,你在公司中身处软件测试团队,同时,工作时又和开发团队,质量团队的合作密不可分,所以与团队成员的互相合作非常重要。
以上三点就是一个合格的软件测试人员所必须具备的能力,软件测试一个不断重复不断革新的行业,需要我们具备不断学习的能力,未来会拥有哪些方法,我们无法预知,我们需要的是做好自己,让自己随时处于一个准备状态,保证新来的知识我们能够快速学习吸收。

WwW.JiZHuBA∴.cOM

Q5: 软件测试工程师需要具备哪些技能2017

1、 软件测试基础知识:
测试计划编写、设计测试用例、编写测试报告、编写BUG报告单、跟踪BUG修复情况、还需要良好的沟通能力、以及各种测试阶段所使用的测试方法、单元测试、功能测试、集成测试、系统测试等等、CMMI /ISO9001
2、 各种测试工具的使用:
我们在测试的工作中为了能够提高工作效率进程会用到很多工具、QTP、LR、QC、TD、Bugfree、VSS、SVN等等工具、虽然说工具不是万能的但是工具能为我们提高工作效率所以不能吧工具当神一样看待、但是必须得会熟练的使用
3、 操作系统相关知识:
Windows、linux、uinx这些都必须会使用、而且不仅仅是简单的操作、一般的服务管理、注册表编辑、命令行操作都需要会、可以想象下一个连apache服务都不会安装配置的人、谁能想象你可以做好基于apache环境的测试工作、什么?不知道怎么查看磁盘压力、IO数据。windows linux都有提供自带的工具可用于查看这些数据、perfmon、top什么的。
4、 数据库知识:
现在Oracle的DBA待遇比一般的开发人员待遇还高就知道数据库在企业中的重要性了、作为测试人员虽然不需要有DBA的能力、但是基本的数据库操作你必须得会把、不管是Oracle、DB2、MSsql还是mysql最少都应该能熟悉使用其中的一二。
5、 计算机硬件知识:
做过性能测试的朋友都知道在性能测试过程中硬件性能也是一个非常重要的指标、CPU、内存、IO、带宽等等、如果你是做硬件测试的。那么就更不用说了。交换机、路由器、防火墙这些设备都需要有所了解。
6、 网络协议:
如果你还知道TCP和UDP有什么不一样的话请赶快去补充点知识吧、互联网时代、一切都通过网络传输、常用协议必须得了解、曾经面试了一个测试工程师做了2年的测试居然不知道自己测试软件使用什么协议、这样的人是你的话你敢招么?
7、 开发语言即代码编写能力:
虽然不会写代码也能做测试、但是如果你想做到高级测试工程师以上、那么代码编写能力就是必选项、如果不会写代码、那么你不可能成为高级测试。高级测试工程师的一部分工作就是在写测试工具。虽然测试也需要写代码但不需要和开发一样那么精通某一门语言、可是测试却需要了解很多门开发语言(举一个简单的例子:你现在所在的项目从C++语言、2年后你换工作了、新公司的开发语言是java或者是VB什么的)所以在开发语言中测试需要更广的学习。
8、 行业知识:
行业知识之所以写在最后面是因为前面的7条我们都可以通过学习来掌握、但是唯独行业知识却只能通过工作经验来积累、不要说你去看几本书就知道通信行业、医疗行业、或者是航天行业、你认为在书本上面能学到么?
由于行业知识的特殊性所以建议朋友们不要频繁的跳槽、经验的积累是需要时间来沉淀的。
9、 具有一定的美学观:
这个说起来比较拗口一点、简单来说不管是开发活动还是测试活动、最后的目标就是将产品推向市场、而且得到用户的认可。所以如果产品在需求分析阶段就出现了偏离用户航道、那么就算测试 开发做得再好这个项目也是一样会失败。所以各位如果有幸能够参加需求评审的话、请不要吝啬你的言论。
10、请不要忘记时刻学习着:
这点我相信大家应该都能理解所以不用写什么:仅此一点“不学习就会落后”
总结:说了那么多技能或者是说是需要掌握的技术、如果你没有一颗发现缺陷之美的心态、没有一颗以提高质量为前提来投入工作中、那么就算你其他做得再好也不过是万千软件测试从业人员中的一枚。测试活动大部分用于发现缺陷、而发现缺陷之后的工作尤为重要:怎么样从发现缺陷到提高质量。

小提示:内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

软件测试技能 推荐文章:
推荐不满意?点这里  ››  

软件测试技能