软件测试需要学习些什么技能
- 测试环境(网络环境,windows环境等)
- 数据库管理
- 编程技巧(java编程设计,脚本语言,设计工具,XML编程)
- 软件测试技术(测试理论,方法,流程,文档写作,测试工具,自动测试)
- 测试技术实践
- 软件测试的基础知识(黑盒测试,白盒测试,单元测试,系统测试)
- 软件测试的基本工具(测试管理工具,自动化测试工具,性能测试工具)
- 其他:一定的编程知识是需要的还需要数据库,中间件,网络协议CMMI等软件工程的理论也是重要的软件测试要求知识面广,但不一定精,编程语言的话,最好是什么都学过,至少几种主流的程序语言要学过,如java、.net、C 。还有会一些脚本语言vba(vb)、sql、 C等。
网络的话:TCP/IP协议,局域网广域网相关知识等
数据库:当前主流的mysql、ms-sql、oracle
常用测试工具:HP的三剑客首当其冲了:QTP(自动化功能测试工具)、LoadRunner(自动化性能测试工具)、QC(TD前身,测试管理追踪工具)。当然这些都是收费产品。网上有破解版的可供学习。(一套)
开源免费的测试工具:QTP(自动化功能测试工具,破解版的可以满足绝大部分测试需求)、jmeter(自动化性能测试工具)、bugzilla(测试管理追踪工具)。
信息产业部门发布的《2006年度软件测试行业专项调查报告》显示,国内IT企业招聘软件测试人员时,比较重视的依次是:软件测试技术、相关经验、缜密的逻辑思维能力、责任心和团队合作精神、出色的沟通能力、良好的学习能力、耐心、细心、信心、优秀的书面表达能力等。
雅虎中国品质保证部经理鲍女士将作为一个合格的软件测试工程师所应具备的能力总结如下:
第一:专业系统的软件测试知识。软件测试作为一门专业的技术有其自身的特点,如果想在软件测试领域有所发展,专业系统的软件测试知识是必不可少的。例如:搭建测试环境、编写测试计划和用例、进行黑白盒测试、使用和开发测试工具等。
第二:一定的项目经验。软件测试职业在意测试经验的积累,特别是大型的软件测试项目经验对于测试人员水平的提升是至关重要的。同时要求测试入门者具备一定的项目经验也是对软件测试负责任的体现。统需求报告中的每一个需求点都会在测试需求中成为几个测试需求点,如果不够耐心,不够细心是很容易遗漏测试需求点的,而这些遗漏的地方往往是问题点 所以说认真、细心、不怕麻烦是一个好的测试人员必备的素质要求。
第三:善于沟通。测试工作是一个问题的爆发点,特别是对于那些开发流程不规范的单位。作为一个测试负责人要经常和开发人员、测试人员、公司领导沟通,而作为一名好的测试人员需要掌握如何处理、协调好人际关系的方法和技巧。
第四:学习能力强,善于总结。软件测试技术随着时间的变化也在不断地发展,作为一名优秀的测试人员要善于利用书籍、网站、论坛、交流等各种途径不断提高自己的软件测试水平。不断的学习新技术,不断总结在实际工作遇到的问题和解决的方法,并将其整理归纳,是一个测试人员提高自己的技术水平的最好方法。
以上转自:https://www.cnblogs.com/dengxiaochou/p/8942129.html
博客园:等小丑–
- 测试人员,必须要深入理解业务,但是业务知识不能等同于测试能力
- 测试开发岗位的核心其实是“测试”,“开发”的目的是更好地服务于测试
传统测试工程师师应该具备的核心竞争力:
- 测试策略设计能力 —— 对于各种不同的被测软件,能够快速准确地理解需求,并在有限的时间和资源下,明确测试重点以及最适合的测试方法的能力
测试要具体执行到什么程度;
测试需要借助于什么工具;
如何运用自动化测试以及自动化测试框架,以及如何选型;
测试人员资源如何合理分配;
测试进度如何安排;
测试风险如何应对
- 测试用例设计能力
深入理解被测软件的业务需求和目标用户的使用习惯
熟悉软件的具体设计和运行环境,包括技术架构、缓存机制、中间件技术、第三方服务集成等等
要多积累,对常见的缺陷模式、典型的错误类型以及遇到过的缺陷
阅读一些好的测试用例设计实例开阔思路
- 快速学习能力
对不同业务需求和功能的快速学习与理解能力;
对于测试新技术和新方法的学习与应用能力。
- 探索性测试思维
在执行测试的过程中不断学习被测系统,同时结合基于自己经验的错误猜测和逻辑推理,整理和分析出更多的有针对性的测试关注点。
- 缺陷分析能力
对于已经发现的缺陷,结合发生错误的上下文以及后台日志,可以预测或者定位缺陷的发生原因
根据已经发现的缺陷,结合探索性测试思维,推断同类缺陷存在的可能性,并由此找出所有相关的潜在缺陷;
可以对一段时间内所发生的缺陷类型和趋势进行合理分析,由点到面预估整体质量的健康状态,并能够对高频缺陷类型提供系统性的发现和预防措施,并以此来调整后续的测试策略。
- 自动化测试技术
- 良好的沟通能力
测试开发工程师的核心竞争力:
- 代码开发能力
- 测试系统需求分析能力(站在架构师的角度)
- 测试系统需求分析能力