软件测试说工程师.doc
《软件测试说工程师.doc》由会员分享,可在线阅读,更多相关《软件测试说工程师.doc(18页珍藏版)》请在三一文库上搜索。
1、本科学年论文(设计) 论文题目: 软 件 测 试 工 程 师 学生姓名: 杨 伟 学 号: 1005290123 专 业: 软件工程 班 级: 1001班 指导教师: 王 命 宇 完成日期:2013 年 11 月 2日软件工程系本科学年论文 软件测试工程师目录一、分类1二、角色定位1(一)提高测试质量的要诀2(二)服务员2(三)避免错误2三、职业优势3(一)初级技术要求低3(二)很大的薪酬优势4(三)就业好4(四)工作比较轻松4(五)越老越吃香4四、前景分析4五、职业素质4(一)计算机专技业能4 测试专业技能4 软件编程技能5 网络、操作系统、数据库、中间件等知识5(二)行业知识5(三)个人素
2、养6(四)要求6六、软件技能7七、交流技能8八、组织技能9九、实践经验10十、结论10十一、参考文献1079交流技能13.1 否定性的创造力1 13.2 探测技巧1 13.3 总体理解产品1 13.4 评价1 13.5 变化1 13.6 态度1 13.7 能力1 13.8 热望142软件测试工程师内容摘要 软件测试工程师指理解产品的功能要求,并对其进行测试,检查软件有没有错误,决定软件是否具有稳定性,写出相应的测试规范和测试用例的专门工作人员。简而言之,软件测试工程师在一家软件企业中担当的是“质量管理”角色,及时纠错及时更正,确保产品的正常运作。按其级别和职位的不同,分为三类。关键词:软件测试
3、工程师 软件测试 工程师 软件缺陷 程序员Software Testing EngineerAbstract Software test engineer point to understand the functions of the product,and to test it, check if there is any error, to determine whether the software has the stability, Robustness, write the corresponding test specifications and test cases of s
4、pecialized personnel. In short, software test engineer in a software company is quality management roles, error promptly corrected in time, ensure that the products normal operation. According to their rank and position is different, divided into three categories.Key words:Software Testing Engineer
5、Software Testing Engineer Software defect The programmer序 言软件测试工程师指理解产品的功能要求,并对其进行测试,检查软件有没有错误,决定软件是否具有稳定性(Robustness),写出相应的测试规范和测试用例的专门工作人员。简而言之,软件测试工程师在一家软件企业中担当的是“质量管理”角色,及时纠错及时更正,确保产品的正常运作。按其级别和职位的不同,分为三类。一、分类 按其级别和职位的不同可分为三类:高级软件测试工程师,熟练掌握软件测试与开发技术,且对所测试软件对口行业非常了解,能够对可能出现的问题进行分析评估;中级软件测试工程师,编写软
6、件测试方案、测试文档,与项目组一起制定软件测试阶段的工作计划,能够在项目运行中合理利用测试工具完成测试任务;初级软件测试工程师,其工作通常都是按照软件测试方案和流程对产品进行功能测验,检察产品是否有缺陷。二、角色定位软件项目开发是个分工明确的系统工程,不同的人员扮演了不同的角色,包括部门经理、产品经理、项目经理、系统分析师、程序员、测试工程师、质量保证人员等。可见,软件测试工程师只是软件项目开发中的一个角色而已。测试工程师承担的任务角色决定工作内容和承担的任务。测试工程师的角色应该承担什么任务呢?这没有统一的答案。因为,这与软件公司的规模,软件项目管理制度,公司领导和项目经理的管理风格,以及具
7、体软件项目自身的特点有很大关系。而且,测试工程师也有普通和高级之分。笼统的答案列举如下:设置软件测试环境,安装必要的软件工具。运行软件,发现和报告软件缺陷或错误。尤其需要快速定位软件中的严重的错误。对软件整体质量提出评估确认软件达到某种具体标准以最低的成本,最短的时间,完成高质量的测试任务.在这其中,最重要的是要明确,程序员的责任和目标。在执行任何具体测试任务前,都要在项目组内对于责任和目标达成共识,以免带来后续工作的相互推诿。(一)提高测试质量的要诀另外一个值得注意的方面就是工作效率和质量,或许高级测试工程师与普通测试工程师的主要区别在于高级测试工程师可以更快地发现更多软件中的严重错误。对此
8、,有什么可以借鉴的诀窍吗?请尝试以下方法,保证不会使您失望。首先测试程序的核心功能,然后测试辅助功能。首先测试功能,然后测试性能。首先测试常见情况,然后测试异常情况。首先测试经过变更的部分,然后测试没有变更的部分。首先测试影响大的问题,然后测试影响小的问题。首先测试必须测试的部分,然后测试可选或没有要求测试的部分。(二)服务员需要强调的一点是,无论你是多么高级的测试工程师,都要明白无论测试需要的工具多么复杂,测试步骤多么冗长,测试工程师在软件项目开发中始终都是扮演服务员的角色,这是由测试工作的特点决定的。任何服务都有被服务对象客户,测试工程师的服务对象有哪些呢?最重要的客户是软件的用户。测试工
9、程师需要站在客户的使用和需求角度测试软件,报告问题。项目经理也是客户。测试工程师需要报告测试工作进度和发现的问题,尤其是严重的问题。程序员是最经常打交道的客户。为了便于程序员重复报告的错误,尽量提供良好的软件问题报告,以便程序员可以更快的修复软件错误。技术文档工程师、市场开发人员和技术支持工程师也都是测试工程师的服务对象。(三)避免错误前文已经指出测试工程师应该明确角色,明确任务和责任。知道哪些是自己分内的事,哪些是不属于自己的事。一定要尽最大努力完成分内的事,不要做不属于自己的事情,以免弄巧成拙。为了更好的扮演软件测试工程师的角色,尽量避免犯下面的错误:承诺完成测试的软件没有质量问题软件测试
10、只是保证质量的一种方法,软件测试工程师的工作不会直接提高软件质量,因为绝大多数软件错误都需要程序员修复。软件测试只能证明软件存在错误,不能保证软件没有错误,不可能找出全部软件错误。个人的能力和对质量的影响范围很小,软件质量的提高要靠软件项目团队全体成员的共同努力。承担软件的发布权利不要因为软件中存在还没有修复的错误,而试图提出更改软件发布的计划。也不要认为已经完成了测试计划,自己决定可以发布软件。因为,改变软件发布计划可能要失去进入市场的良机和很多客户,对此造成的经济和公司市场的损失将不是测试工程师能够承担的。另外,软件发布后,如果用户发现了新的软件错误,公司领导或项目经理可能将过错加在软件测
11、试人员的头上,因为他们同意发布软件。通常软件发布的权利由产品经理、项目经理、测试经理、市场经理共同集体讨论决定。扮演过程改进成员的角色软件测试工程师必须报告错误,有时也要分析错误的类型、特征和产生错误的原因。但是,不要主动提出改进软件过程的具体改进措施,更不要直接干涉程序员的工作方式,以免出力不讨好,影响今后的愉快合作。软件过程改进的方法是软件质量控制部门的事情,这是他们的本职工作。三、职业优势(一)初级技术要求低目前大部分测试技术还属于手工测试,手工测试要求入门门槛很低。你只要会写用例,会提缺陷就可以了。测试人员需要简单了解业务知识,学习所开发系统的使用,也就是会使用系统就可以了。照着用例执
12、行测试,发现缺陷直接提交缺陷就可以了。(二)很大的薪酬优势刚开始工作时月薪最低4000多,但工作半年,对工作流程了解后,再去换工作,五六千没问题。如果做银行业务测试起薪六七千没问题,有一点银行业务知识的再去换工作八千以上没问题,现在银行测试人员缺口很大。尤其是在大的外包公司做好的项目,比如银行项目等待遇和同等工作经历的开发差不多。(三)就业好国外开发与测试的比例是1:2。目前国内开发与测试的比例是6:1。所以测试行业人才缺口很大,就业前景很好。基本属于供不应求。(四)工作比较轻松比起软件开发工程师来说,软件测试工程师的工作就相对轻松多了(五)越老越吃香软件测试工作是对质量的把关,其中包含技术及
13、管理等方面的工作,工作相对稳定,对年龄没有限制,而且随着经验的积累,工龄越长越吃香。四、前景分析软件测试人员的主要职责是对软件产品的整个开发过程进行监督和检验,使之能够达到满足客户的需求,因此对于企业来讲是十分重要的岗位。在国外,一般软件测试人员与软件开发人员的岗位设置比例是1:1,像微软在开发windows2000时候使用的软件开发人员是1700名,而专业的测试工程师有3200名,测试开发人员比例高到1.7:1,由此可见软件测试岗位重要性的一斑五、职业素质(一)计算机专技业能计算机专业技能主要包含三个方面: 测试专业技能测试专业知识很多,本书内容主要以测试人员应该掌握的基础专业技能为主。测试
14、专业技能涉及的范围很广:既包括黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法,还包括基础的测试流程管理、缺陷管理、自动化测试技术等知识。 软件编程技能软件编程技能实际应该是测试人员的必备技能之一,在微软,很多测试人员都拥有多年的开发经验。因此,测试人员要想得到较好的职业发展,必须能够编写程序。只有能够编写程序,才可以胜任诸如单元测试、集成测试、性能测试等难度较大的测试工作。此外,对软件测试人员的编程技能要求也有别于开发人员:测试人员编写的程序应着眼于运行正确,同时兼顾高效率,尤其体现在与性能测试相关的测试代码编写上。因此测试人员
15、要具备一定的算法设计能力。依据资深测试工程师的经验,测试工程师至少应该掌握Java、C#、C+之类的一门语言以及相应的开发工具。 网络、操作系统、数据库、中间件等知识与开发人员相比,测试人员掌握的知识具有“博而不精”的特点,“艺多不压身”是个非常形象的比喻。由于测试中经常需要配置、调试各种测试环境,而且在性能测试中还要对各种系统平台进行分析与调优,因此测试人员需要掌握更多网络、操作系统、数据库等知识。在网络方面,测试人员应该掌握基本的网络协议以及网络工作原理,尤其要掌握一些网络环境的配置,这些都是测试工作中经常遇到的知识。操作系统和中间件方面,应该掌握基本的使用以及安装、配置等。例如很多应用系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 工程师
链接地址:https://www.31doc.com/p-2539947.html