软件测试培训心得
从事软件测试工作已经有三年了,在经历了小公司、大公司的功能测试之后,业务需求已经不是本职测试工作的阻碍了,这时的我们该想想接下来的路了……
通过qq群知道了有这么一个测试培训机构有这么一群不断努力的人。思来想去,周末在家无聊的荒废时间,不如试试加入他们,重拾刚毕业那会的昂扬斗志。
加入这个培训之后才从之中的同学那里知道,原来这个培训班已经办了快两年了,里面有很多学员都是从最初一直坚持到现在。培训课程设计范围也很广,包括系统的数据库、java编程、linux系统包括时下比较fashion的手机自动化测试等等知识,在讲述这些知识的同时老师会在课程中间穿插测试涉及的内容。课程完毕后,对应的老师也会一直在群里与同学互动,及时解决同学在实际测试应该过程中发现的问题,这个对于我们在职的软件测试人员还是很有吸引力的。
目前为止,我也只参加了两次培训,一次单元测试,老师是微软的开发人员。虽然测试人员一般不会做单元测试,但对于目前很多公司不重视测试的行业现状,多了解开发人员的工作流程或操作无可厚非,在必要的时候能够明白开发是用什么工具如何进行的也可以让开发对你的测试工作给予更多的肯定。之后的培训是手机自动化的,我因有事无法参加,不过看到群里大家在热烈的讨论时,还是有点遗憾啊。最近的一次培训是selenium自动化测试,这次的培训不是用的seleniumIDE而是通过结合浏览器自带组件自编代码进行各个浏览器的自动化测试,虽然这次讲的东西比较少,但对于我们实际的测试工作还是很有帮助,至少给我们的测试工作提供的思路,不是一提自动化测试就茫然无措了。
扩展阅读:软件测试培训心得体会
软件测试培训心得体会
概述
201*年8月2日至201*年8月6日,中国软件评测中心的测试技术应用与实践培训课程在武汉召开,本人非常荣幸的参加此次培训,通过这次经验让我系统的梳理了软件测试理论技术,对软件测试有了一个更深入更全面的认识。
下面请准许我简述软件测试的概念及软件测试在软件工程中的重要性。
一:软件测试历史与发展
到了上世纪80年代初期,软件和IT行业进入了大发展,软件趋向大型化、高复杂度,软件的质量越来越重要。这个时候,一些软件测试的基础理论和实用技术开始形成,并且人们开始为软件开发设计了各种流程和管理方法,软件开发的方式也逐渐由混乱无序的开发过程过渡到结构化的开发过程,以结构化分析与设计、结构化评审、结构化程序设计以及结构化测试为特征。人们还将“质量”的概念融入其中,软件测试定义发生了改变,测试不单纯是一个发现错误的过程,而且将测试作为软件质量保证(SQA)的主要职能,包含软件质量评价的内容,BillHetzel在《软件测试完全指南》(CompleteGuideofSoftwareTesting)一书中指出:“测试是以评价一个程序或者系统属性为目标的任何一种活动。测试是对软件质量的度量。”这个定义至今仍被引用。软件开发人员和测试人员开始坐在一起探讨软件工程和测试问题。
软件测试已有了行业标准(IEEE/ANSI),1983年IEEE提出的软件工程术语中给软件测试下的定义是:“使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别”。这个定义明确指出:软件测试的目的是为了检验软件系统是否满足需求。它再也不是一个一次性的,而且只是开发后期的活动,而是与整个开发流程融合成一体。软件测试已成为一个专业,需要运用专门的方法和手段,需要专门人才和专家来承担。
进入上世纪90年代,软件行业开始迅猛发展,软件的规模变的非常大,在一些大型软件开发过程中,测试活动需要花费大量的时间和成本,而当时测试的手段几乎完全都是手工测试,测试的效率非常低;并且随着软件复杂度的提高,出现了很多通过手工方式无法完成测试的情况,尽管在一些大型软件的开发过程中,人们尝试编写了一些小程序来辅助测试,但是这还是不能满足大多数软件项目的统一需要。于是,很多测试实践者开始尝试开发商业的测试工具来支持测试,辅助测试人员完成某一类型或某一领域内的测试工作,而测试工具逐渐盛行起来。人们普遍意识到,工具不仅仅是有用的,而且要对今天的软件系统进行充分的测试,工具是必不可少的。测试工具可以进行部分的测试设计、实现、执行和比较的工作。通过运用测试工具,可以达到提高测试效率的目的。测试工具的发展,大大提高了软件测试的自动化程度,让测试人员从繁琐和重复的测试活动中解脱出来,专心从事有意义的测试设计等活动。采用自动比较技术,还可以自动完成测试用例执行结果的判断,从而避免人工比对存在的疏漏问题。设计良好的自动化测试,在某些情况下可以实现“夜间测试”和“无人测试”。在大多数情况下,软件测试自动化可以减少开支,增加有限时间内可执行的测试,在执行相同数量测试时节约测试时间。而测试工具的选择和推广也越来越受到重视。
在软件测试工具平台方面,商业化的软件测试工具已经很多,如捕获/回放工具、Web测试工具、性能测试工具、测试管理工具、代码测试工具等等,这些都有严格的版权限制且价格较为昂贵,但由于价格和版权的限制无法自由使用,当然,一些软件测试工具开发商对于某些测试工具提供了Beta测试版本以供用户有限次数使用。幸运的是,在开放源码社区中也出现了许多软件测试工具,已得到广泛应用且相当成熟和完善。
二:软件测试的概念与目的
软件测试就是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。执行测试用例后,需要跟踪故障,以确保开发的产品适合需求。
1.测试的目的是为了表明软件能够工作
2.测试的目的是为了表明软件不能够能够正常工作3.测试的目的不是要证明什么,而是为了把软件不能正常工作的预知风险降低到能够接受的程度
4.测试不是行为,而是一种自觉的约束,不用太多的测试投入产生低风险的软件上的。
三:自我体会
体会一:软件测试在整个软件生命周期中的重要性
它存在于整个项目周期,在项目开始之初需求调研的时候就开始
了,在形成需求规格说明书的时候就需要针对文档进行测试。这个环节在后续整个项目中占了很大的比重,能主导整个软件项目的走向,成败与否全在于开始阶段的决策。
体会二:软件测试的真正意义这与发现错误,而不在于验证软件是正确的
在严格的测试也不能完全的发现软件当中所有的错误,但是测
试还是能发现大部分错误的,能确保软件基本可用和软件的适用性,所以在后使用的过程中还需要加强快速响应的环节。结合软件测试理论,故障暴露在最终客户端之前及时主动的去发现并解决。这点需要加强研发队伍的建设。体会三:在系统性能方面需要重视
经过这次培训中多个案例的讲解,让我了解到系统在上线之后会有很多不能预知的性能问题,需要在上线之前实现进行模拟,以避免风险,包括大数据量访问,高并发数等等。当然也有很多应对手段,没有那种手段可以称最完美的,只有最合适的,需要灵活的掌握,综合运用以达到最优程度,这个很值的大家一起研究。
四:个人想法
根据软件部门目前的情况,接下为了我们的软件能在质量上得到保障减轻项目后期维护验收的风险,在此做以下想法和建议;
想法一:有效制定软件测试流程;
由于前期软件工程项目中,未对软件进行系统化的测试,导致后期维护成本较高,变相增加了软件开发人员的工作量。方案:
1:测试需求分析
明确需求范围
明确每个功能业务处理流程不同的功能点作业务的组合挖掘显示需求背后隐藏的需求
测试需求分析:单功能点输入输出------业务流分析-------全局-----隐藏需求挖掘
2:阶段测试
再软件工程项目中,根据节点、功能模块,业务场景对工程所属软件进行步奏化测试。
3:流程关联性测试
当所属软件开发初步完成时,对软件进行功能关联性,数据关联性进度完整测试。
4:验收测试
软件上线阶段,由我们工作人员带领用户进行现场实时测试并收集测试结果加以进一步完善软件项目,根据用户实际情况制定测试周期。
想法二:设计测试用例
在软件测试时测试用例是很关键的,应为他涉及到一套软件
的输入输出发生情况,能够充分的体现和考虑软件各个方面的缺陷(有序测试)。
如果没有一套完整的测试用例,那么当测试软件时是很难分
析软件输入输出的各种条件,测试起来也较为盲目。(无序测试)。设计测试用例的好处
1.在开始实施测试之前设计好测试用例,可以避免盲目测试并提高测试效率
2.测试用例的使用令软件测试的实施重点突出、目的明确3.在软件版本更新后只需修正少部分的测试用例便可开展测试工作,降低工作强度,缩短项目周期
4.功能模块的通用化和复用化使软件易于开发,而测试用例的通用化和复用化则会使软件测试易于开展,并随着测试用例的不断精华其效率也不断攀升
想法三:功能测试全员化
根据软件部门人员实际情况,在开发过程中进程阶段化或
模块化测试时,相互交换开发模块形式按需求说明进行功能测试及编写测试报告。
想法四:当技术及设施条件充分的情况下可适当做性能测试
目前我们在项目建设过程中对性能压力测试的重视程度还不太高,而是在现网进行试用,遇到问题再解决,可能会产生泄后问题,影响客户使用。
件的性能测试在技术上来说需要大量的实践和经验才可
进行,所以建议在有限的时间和条件下软件部门可以一起学习和实践,对软件性能进行有效的测试,以保障软件的质量降低软件的风险。
最后再次感谢公司提供的平台,感谢领导的信任,让我有机会得到相关技术的学习及展示自己能力的机会,我也会尽我所能来完善工作的系统,提高工作效率。
王斐201*.8.
友情提示:本文中关于《软件测试培训心得》给出的范例仅供您参考拓展思维使用,软件测试培训心得:该篇文章建议您自主创作。
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。