软件测试工程师目前正在成为IT行业中一个新亮点,不仅其从业人员薪水高、人员需求增加快而广受关注,而该行业未来良好的发展前景也受到肯定。因此想要成为软件工程师,你就必须要知道软件测试到底要学习什么,它的职责内容又是什么。
软件测试需要掌握的知识
1、首先是软件测试的基础知识,包括软件测试的概念、过程,测试用例和缺陷等相关知识。
2、第二部分就是测试环境的知识(这放在第一位也是可以的),这主要就是对常见的操作系统要了解,会搭建测试环境,主要就是Windows、Linux和Mac OS.
3、就是要了解数据库的知识,现在大多软件都是要用数据库存储数据的。而且面试也会问很多关于数据库的内容。
4、就是要熟悉一门程序设计语言,常见的有Java、C、C++
5、了解自动化测试的知识,主要是会使用自动化工具,像QTP、Loadrunner、QC这些。
6、就是白盒测试知识和白盒工具。
其中像自动化和白盒部分的内容对于零基础来说刚开始工作肯定是接触的很少的。那么只要你把前4部分掌握好,找到软件测试的工作应该是不成问题的了。
如何学习每门课程
测试基础:这部分内容概念还是比较多的,也是最重要的部分,所以要重概念、重理解、重体会。重概念就是记住这些概念了,然后要理解它了,重体会就是在项目中要来体会它,有自己的见解。
数据库:数据库是一门实践性很强的课程,所以要重概念、重操作。对于基础的概念还是要理解的,只有理解了这些才能跟好的使用它。要熟练的使用的数据库,对重要的命令要牢记。多上机练习。
Java部分:这部分也是要重概念、重实践。学习程序设计的好办法就是多读代码,多写代码了。没有什么捷径。
自动化部分:这部分主要是介绍一些工具,所以还是要重概念、重操作。多去实践,熟练操作。
Linux部分:还是重概念、重实践啊,理解一些基本概念,多去实践,这样命令才能记住。
白盒部分:现阶段对它重概念就可以了,记住基本概念。
软件测试工程师主要做什么
软件测试工程师指理解产品的功能要求,并对其进行测试,检查软件有没有错误,测试软件是否具有稳定性,写出相应的测试规范和测试用例的专门工作人员。那么软件测试工程师具体要做什么呢?
1、测试和发现软件中存在的软件缺陷
使用各种测试技术和方法来测试和发现软件中存在的软件缺陷。测试技术主要分为黑盒测试和白盒测试两大类。其中黑盒测试技术主要有等价类划分法、边界值法、因果图法、状态图法、测试大纲法以及各类典型的软件故障模型等;白盒测试的主要技术有语句覆盖、分支覆盖、判定覆盖、基本路径覆盖等;
2、测试工作需要贯穿整个软件开发生命周期
完整的软件测试工作包括单元测试、集成测试、确认测试和系统测试工作。单元测试工作主要在编码阶段完成,由开发人员和软件测试工程师共同完成,其主要依据是详细测试。集成测试的主要工作测试软件模块之间的接口是否正确实现,基本依据是软件体系结构设计。确认测试和系统测试是在软件开发完成后,验证软件的功能与需求的一致性、验证软件在相应的硬件条件下的系统功能是否满足用户需求,其主要依据是用户需求。
3、缺陷报告编写及提交
测试人员将发现的缺陷编写成正式的缺陷报告,提交给开发人员进行缺陷的确认和修复。缺陷报告编写最主要的要求是保证缺陷的重现。要求测试人员具有很好的文字表达能力和语言组织能力。
4、软件质量分析
测试人员需要分析软件质量。在测试完成后,测试人员需要根据测试结果来分析软件质量,包括缺陷率、缺陷分布、缺陷修复趋势等。给出软件各种质量特性包括有功能性、可靠性、易用性、安全性、时间与资源特性等的具体度量。最后给出一个软件是否可以发布或提交用户使用的结论。
5、测试计划制定
测试过程中,为了更好地组织与实施测试工作,测试负责人需要制定测试计划,包括有测试资源、测试进度、测试策略、测试方法、测试工具、测试风险等。
6、测试用例报告形成
测试人员为了更好更有效地进行测试,保证测试工作质量,需要在执行测试工作之前首先需要设计测试用例,形成测试用例报告。设计测试用例是保证测试质量的核心工作,很多测试技术都可以用来指导设计用例。为了提高测试用例的设计效率,达内培训课程专门开设了高效设计测试用例一门课来讲授各种设计用例的技术与方法。
7、自动化测试工具引进
为了提高工作效率或提高测试水平,测试工作需要引进自动化测试工具,测试人员需要学会使用自动化测试工具,编写测试脚本,进行性能测试等。
8、测试水平提高
测试负责人在测试工作中,还需要根据实际情况不断改进测试过程,提高测试水平,进行测试队伍的建设等。
软件测试工程师岗位职责
1、依据需求文档及设计文档,编写测试用例;
2、完成产品的集成测试与系统测试;
3、根据测试计划,搭建测试环境;
4、依据测试用例执行手工测试,反馈跟踪产品BUG及用例缺陷;
5、测试工具/系统的研究和应用;
软件测试工程师的职位发展
测试分析师
主要职责是对系统的测试结果进行综合的分析,例如缺陷分析、性能分析等。测试分析师不但测试技术能力较强,还要具备数据库、操作系统等多方面的技术知识。这类职务的发展空间也不错,可以发展成系统设计师等。
测试工程师
主要职责是编写测试程序、执行自动化测试任务。这类职位的测试人员至少要达到初级程序员的能力,因为经常和程序打交道。发展空间也不错,例如可以发展为程序员。
评论
查看更多