这个学期我学习了软件测试这门专业课程,在学期即将结束的时候,我也对这门课程建立基本的了解和理解。软件测试这门课程作为软件工程专业中一门很重要的课程,已经在软件领域占据了不可替代的角色,当一个软件从雏形到真正的在一台计算机上运行的时候,谁也不能保证计算机软件能一步到位的满足人们的需求。所以就有了软件测试,其目的是:第一是确认软件的质量,其一方面是确认软件做了你所期望的事情,另一方面是确认软件以正确的方式来做了这个事件。下面我简单的写一下这个学期对课程的总结和收获。
我认为,在整个庞大的软件工程中,不管是需求分析、架构设计甚至是最后的debug,都会产生引入不管的机会,这就要求作为一个软件测试师要掌握丰富的软件工程原理和知识。测试的工作将会存在于整个项目周期,即在项目开始时需要各种分析调研时就开始了。尤其是在形成需求规格说明书时就有对文档的测试需求,甚至主导整个项目的走向。
软件测试对逻辑思维、学习能力、反应要求很高,是否有严密的思维和逆向思维也非常重要。做测试还要考虑到所有出错的可能性,有时候还要用一些非常规的的测试方法。软件测试还很注重软件性能问题,也就是要保证软件运行得很好;不同的使用环境下,考虑软件的兼容性同样重要。对于测试员来讲,会比开发人员更加重视软件产品的质量问题。在测试过程中,测试者可能会为客户的需求角度考虑到更多,由此我们可以认为测试人员有权利决定产品是否可以发布。然而,通过一个学期的学期,我们又不得不懂得,软件测试人员不是万能的,测试人员在面对一个设计烂编码烂的软件时,也是无法不低头的,再怎么测试它也变不成优秀的软件。
通过课上的理论因为课下的实践和后半学期又因为身体力行于。
1、最基本的测试的分类:从是否需要执行被测软件的角度,可分为静态测试和动态测试;从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为白盒测试和黑盒测试。
2、然后就是,白盒测试中的逻辑驱动测试的覆盖率测试。
3、还有就是对于划分等价类和边界值法这一块,让我从模糊到明朗。
4、在初次写测试用例的时候,感觉真是纠结,用例写的很死板,看似简单的一个填表工作,要写好真是不简单。一开始写的比较不自然,有些生搬硬套,而且还很慢。在后来负责了对论坛新鲜事版块的测试之后,明白了测试用例其实就是指导怎么去执行测试,而且书写设计测试用例也要以熟悉软件的业务为前提,才能更好的去测试。
另外就是一个学期的学习让我纠正了几点误区:
1、有位大师曾说过:“软件测试的目的在于发现错误,一个好的测试用例在于发现从来未发现的错误,一个成功的测试是发现了从未发现的错误的'测试。”由此我自认为测试就是为了找到bug,然而一个学期的测试学习经验告诉我这是错误的,如果只是为了找到BUG,那么BUG会成天缠着你。
2、在大家协力测试论坛的时期内,我曾认为这种大量的重复性的工作真的很乏味,可是在这乏味中真心发生挺多有意思的bug,意想不到的bug,所以我认为只要掌握了方法,在重复中寻到到创新的小惊喜,任何东西都有它的特点。
作为测试新手,通过一学期的学习,我认为能独立写测试计划,设计测试用例,精通一种测试工具,理解一种bug管理软件是新手晋级老手的必备素质。任重而道远?
在最后,我不得不提的就是细心和耐心了。这是我认为这个学期测试课上收获的了,课程要求测试时必须细心和耐心,我在想,如果以后真的工作在测试一系列的岗位上,要学会坐得住,用大量的时间和精力和bug斗争,分离、识别还有归类bug,是不是也能真的改变我粗心大意和三分钟热度的毛病。
最后感谢刘老师这学期的课程讲授,和实践中的指导和帮助。测试路程,路漫漫其修远兮,吾将上下而求索。
我最初参加测试工作的时候,不知道什么是软件测试,集成测试和系统测试的概念经常混淆,cmm是什么就更加不知道了。那时候最简单的开关机也是通过直接拔插电源完成,安装系统对我来说简直是有史以来人类的最高技能,对于那些拿着螺丝刀安装机器的人就认为是宇内超级高手,身具杀人于无形之绝世秘技。拿破仑说不想当将军的士兵不是好士兵,我最初的梦想就是想成为软件测试的高手,傲视天下。所以不断偷师,总结经验,自认为掌握了成为高手的几个秘技,这几年混迹“江湖”还算无往而不利。不敢独享,望与吾辈测试人员切磋,早日总结成功密技之大成,助新进人员早日入门,也算不愧对东北活雷锋的称号。
第一招学会利用网络
刚参加工作面对浩瀚的网络世界,当时如刘姥姥进大观园,什么都新奇,什么都想要,从网上下载很多源程序的代码,软件技术文档之类,恨不得把所有的好东西收集到手中,其实有些在他人看起来就是垃圾一堆。当时觉得有了这些“武林秘籍”,成为高手指日可待。最初参加工作由于自己工作努力有幸转为开发,加入项目组后我的习惯还是没有改,反而变本加厉,手中的资源更加多,上网的时间更加频繁。
一次项目经理分配任务,觉得依靠手中的秘籍加上自己的“聪明才智”很快会完成,不料短短的时间,所有的一切变成了马奇诺防线。解决问题很慢,思路不清晰,项目经理在对我施压的过程中教会了我终身难忘的一招,学会利用网络寻找要解决问题的答案,从此google成了我的最爱,关键字成了我变化的招数。在软件测试工作中,他帮我解决了很多疑难问题,解答了很多令我迷惑的地方。也是我帮助测试同行解决问题手段之一,很多软件测试新手,甚至老手都没有意识到自己手上就握有“无敌秘籍”,所以只要你耐心找,答案就在身边。
这里总结一下利用网络搜索引擎的技巧:
组合搜索:每次搜索某个文件,如果只给出一个单词进行搜索,经常会出现成千上百万计的匹配网页。然而如果再加上一个单词,那么搜索结果会更加切题。
选择表述内容的词组:一般我在网页搜索引擎的时候,选择一些可以表达我要查找内容的关键词组,用来缩小搜索范围,从而找到搜索结果是最好的办法。运用词组搜索涉可以先先简单地输入一个问题作为词组搜索,如果仍然找不到合适的,那就用多个可以表达要查询内容的关键字进行查询。
定位信息来源:有的时候用词组搜索不到或者无法准确表达所需信息。可以用另一种方法直接到信息源,就是直接到到提供某种信息的站点去。可以用公式“公司名”去猜测某一组织的特点。从而得到所要搜索的信息的主要词组。
其实网络上还有很多关于搜索技巧的文章,大家可以自行学习。千万要记住搜索引擎是帮助你成功的有力武器。
第二招学会动手
参加软件测试工作后,随着工作经验的增长自我感觉越来越好。在公司里也逐渐受到同事领导的重视,一次针对公司的新的软件功能进行测试的时候,像往常一样“随手”测试出了几个bug,然后“仔细”的填写了bug单(这个bug的现象已经出现了很多次了)。这时候测试经理走过来,重新复查了一下填写的bug。他在重现我的bug的过程中,简化了我的输入变化,bug神奇的又出现了,同样的现象,他关闭软件重新变化输入,扩展出10几个变化后,软件不动了,内存不断上升。终于他找到了产生软件的bug的原因,然后对我说“寻找bug要准确定位,我们开发团队是一个整体,时间是等量的,时间不在你身上浪费,就是在他身上浪费。如果测试人员每次发现的bug描述不清楚,并且多个问题潜在的错误原因是一个,虽然操作可能稍微有些变化。这样开发人员在重现bug的时候他要调试跟踪判断,很花费时间,而且效率低。如果测试人员发现bug的时候多动手可以更加准确的定位bug步骤和原因,给开发人员最精确的步骤和准确的描述,这样整个团队才能高效,所以需要大家协作。
在以后的日子里,每次解决问题的时候我都记得多试验几次,多尝试。网上很多朋友还有同事问我问题的时候,其实他们只是万里长征就差一步,只要再多动手实验一次就可以达到目的了。所以多动手,多尝试。
第三招思考自己所作的
刚开始入行的时候,总是思考如何做好软件测试。认为公司的测试流程混乱总是很郁闷,认为自己学不到东西,如何才能测试好产品,常说心动不如行动,以前看到古龙小说中经常出现的场景无名小子不断挑战高手,总结积累。我总结了有些经验是实战中得到的,所以不断尝试引入新的测试流程然后评估,这个过程虽然很痛苦,但是从中积累了不少经验。这段时间让我学习到了很多东西,接触了iso,cmm,测试管理工具,自动化工具(因为公司不正规给了我很多学习的机会,后来到了比较大的软件公司后,以前的经历给了我更多的发展机会,因为大公司非常正规了,公司内部人员分工明确,所以能力的锻炼反倒少了)。由于工作中经常写报告反倒养成了总结教训的习惯,因为纸面上的东西是永远也忘不掉的。在写的过程中可以不断补充扩展,整个过程是思想升华的过程,当年达摩面壁九年就是融会贯通的典型例子,如果他不是有个思考的过程,他也不能成为一代大家。如果后来不时有人把他的绝技记录下来,也就不能有后来的少林寺七十二绝技。
所以善于思考,总结经验,也是成为高手之路的不二法决。
一直在对公司几个固定的软件做测试工作,在接到进行KJ385系统的测试任务之前对我们的在线系统一直没有一个很深刻的认识,甚至于对主站、分站、接口这样的术语也是一无所知,只知道一点我们的在线系统在公司是一个很重要的项目,大家对其也抱有很大的信心,一定要让其顺利的通过煤安认证。
11月26日开始本系统的测试工作,其实也算不上是只针对于软件,需要排查软件本身的错误,然后从软件中发现硬件上传的问题,与开发人员一同分析确定bug是由软件还是硬件程序产生的。从学习到测试到排查,整套系统测试完毕真的收获很多,无论是知识上还是以后工作中需要注意的地方。想在此把我的整个测试过程记录一下,也算是对这段时间工作的一个总结,不过这些收获还得要归功于我的领导,如果不是他这次把这个任务分给我,我真的学不到这么多东西呢。
(1)与工作组人员的合作
说团队合作可能意义太广,我要表达的一个意思就是一旦一份工作需要其它人的协助配合,一定要让别人了解到你确实是想得到问题的答案,你在虚心请教他们每一个人,这样整个小组才能有一个好的工作氛围,才能让工作顺畅的进行下去,对其它成员的工作不理会,也势必会对自己的工作造成困扰,因为你永远都不可能保证自己工作中不会遇到问题。
(2)效率的提升
这个效率的提升不是从我本人身上得到的一个体会,而是整个工作过程中我对其它人工作效率的一个总结(不过这可不是批判其它人的工作,也算是对自己以后工作中尤其要注意的一方面的一个提醒吧。接到一个大的任务可能你要做的工作很多很多,(比如说我们的在线系统,硬件上你既要熟练掌握各个硬件设备的挂接,又要学会修整其中出现的小问题,保证硬件正常的情况下还要确保软件无误)这时候时间上的把握一定要清晰,今天做什么,明天做什么,工作与工作的衔接是否得当,第二天做的工作前一天是否已经对其做了初步的准备。应该要列一个详细的时间安排计划,没有计划的工作只能让你手忙脚乱,看上去你一直忙忙碌碌,但其实每个工作都没有结果,这样势必会导致你的工作质量下降,甚至于任务的延期。如果在工作进行时确实因为一些其它原因导致不能按照原计划执行,或者说因为执行某一项耽误了后面的进程那自己利用业余时间将计划进行修整以保证后面的工作不会受到很大的影响。工作务必要保证在合理的时间段内高效率的完成。
(3)任务的轻重缓急
确定当前你的重点测试方向,是硬件还是软件,如果是当前重点测试软件问题,一定要保证其硬件的挂接正确,硬件本身能正常工作。将软件的简单独立功能测试完毕,再去重点测试实时在线传输,实时在线传输讲求的是性能稳定,一定要制定合理的测试方案保证能顺利的让软件通过性能测试。初次测试个人感觉对软件的测试极不成功,因为没有制定一个合理的测试计划,以至于因为硬件程序的问题让软件的测试很被动,重点测试方向给转移了。但事后仔细想想,反复验证硬件程序的时间之余足以让自己把实时上传的测试方案写出来,这样也会加速后面的测试进程,让工作仍然保持有序状态。
(4)错误的跟踪分析
前面说的实时在线传输系统看的是系统的稳定性能,长时间加载之后如果发现有问题,作为测试人员也要在第一时间对其排查,要首先排除人为因素造成的故障或是机器本身是否有问题,然后要对数据进行分析查看故障日志的发生时间、查看数据的完整性,以便开发人员在询问有关故障适宜时能够应答自如,这样就能更有利于开发人员确定错误,以便及时对其修改,对于已经确定的问题修改完毕之后列为重点测试对象继续对其监测。开发人员也找不出问题的所在,这时作为工作组成员要做的工作就是提出几个测试方案以便依次进行排查。(如我们本套系统我确定设备没问题,但就是不清楚到底是分站问题还是主站问题,这时候为了找到问题根源就必须想几个测试方案,如我们先单独挂接一种类型设备加载固定时间确定单个设备没有问题再依次往上挂接其它类型设备,多一种设备一旦出现问题那产生错误的根源也就找到一定是某种设备的传输对另一种设备类型造成了影响…)本次测试对自己提供测试方案这方面比较满意,其中也排查出了问题所在。
(5)与开发人员的配合
曾经看过一句有关测试的话语,一个好的测试人员不是发现更多bug使得开发人员不自在的人,而是能够说服开发人员修正更多bug的人。对这句话自己当然是持中立态度。但是这句话却现实的反映出开发人员与测试人员在工作中的对立问题。任何一个开发人员都不希望自己的程序或产品出问题,甚至于我们发现的错误有时开发人员并不认同,认为是我们搭建的环境问题,这时候就要看测试人员如何去沟通表达。工作中一旦发现问题不要去数落开发人员的不是,而是向开发人员报告错误之后与开发人员一同去确定bug。或者更进一步帮助开发人员一块去思考可能产生问题的原因,这样开发人员才乐于接受。(自己对此深有体会,从开始对开发人员改程序的不耐烦到与开发人员一块排查问题所在,自己感觉很有收获,一点小小的成功软件上一块跟开发人员解决问题)与开发人员的沟通配合靠的是换位思考,换做自己的话也未必不会出现这样的错误,甚至有可能出现的问题更多呢。
自2月份开始,我一直在跟进xx银行w—xxnd1s2.0项目的测试工作,至此为止已近6个月时间,从公司内部系统测试、验收测试,再到uat测试,以及投产前的系统压力测试等等。从开始到项目即将结束,一步步走过来。本次项目中,我作为测试环节的主力人员之一,仅对此项目中测试工作进行总结。
一、项目测试进度控制。
项目的测试进度主要是按照项目计划进行的,完全按照项目组计划要求完成测试任务、提交测试类相关文档,包括测试案例的完善、制定测试计划、执行测试、缺陷跟踪以及bug回归测试等。协调项目的内部测试工作,本此项目中测试小组一共组织了四轮次系统全面测试工作,认真配合项目工作,共同保证项目质量。项目测试的问题跟踪及处理采用每日进行修改问题回归测试工作,每日同步更新问题跟踪单的模式,按照规划时间完成系统更新测试。
二、项目组内部成员关系处理。
在项目工作的这几个月里大家相处融洽,项目组内部共同探讨解决问题的方法,向各模块负责人学习模块功能处理方式,向业务人员了解系统中涉及的业务知识点,两者结合起来进行模块功能测试。鉴于之前辖内对公交易系统和中行对公项目的经验,也向项目组提出了一些完善性意见。
三、协调用户测试方面。
用户验收测试是项目测试工作的重要组成部分之一,是项目验收阶段的最终把关阶段,业务人员结合日常业务处理情况对系统进行的尝试性使用过程。本次项目客户测试方面也是我个人觉得不够安全感一个主要方面,客户测试介入力度太小,尽管我们已经很多次电话催促业务人员测试,每次联系相关业务人员进行测试,他们来到项目组开发现场测试,也仅仅一两个小时时间,简单的进行验证操作即可。xx银行利用两批系统培训的时间安排了两次分行集中测试,也算给项目进行了一次全面的测试,从中也暴露出不少系统存在的问题,目前项目组均已解决。
四、测试成效方面。
中信x—funds2.0系统测试中,共记录问题及客户新增需求825个,其中bug数量512个、系统完善类问题225个,新增需求类问题88个。组织了四轮次内部系统全面测试工作,兼顾日常系统更新测试工作,最大限度的进行了内部质量把关。配合外包公司一同进行系统压力测试及稳定性测试,测试结果符合客户要求。现中信x—funds2.0系统临近投产实施工作,测试组还将继续配合配合项目投产工作及投产后的补丁更新测试工作。
五、个人得失方面。
作为此次项目测试的负责人,对于日常的测试流程、测试任务分配、测试执行、缺陷跟踪、协调内部测试及协调客户测试方面能力均得到了进一步提高,理清了项目整个过程中测试小组的工作过程以及后期的项目移交工作。同时也对各子系统相应的业务知识有了更进一步认知。相关业务知识方面还需要进一步加强,测试技能及测试管理方面还需要进一步完善学习。更好的吸收项目经验,做好以后的补丁测试工作及其他项目的测试工作。
哈尔滨工程大学的核工程与核技术专业排名怎么样 附历年录戎数线
江西航空职业技术学院和广西工业职业技术学院哪个好 附对比和区别排名
广西高考排名127100左右排位理科可以上哪些大学,具体能上什么大学
江苏高考排名123140左右排位物理可以上哪些大学,具体能上什么大学
湖南高考排名175930左右排位物理可以上哪些大学,具体能上什么大学
长沙理工大学的国际经济与贸易专业排名怎么样 附历年录戎数线
花卉买卖合同(9篇)
药剂师年终工作总结
学年度小学课题研究总结
农作物种子买卖合同(十三篇)
药剂师年终工作总结
学年度小学课题研究总结
物流部员工工作总结范文(精选五篇)
最新学校安全教育日活动总结范文
幼儿园小班九月份工作心得
音乐学科名师工作室个人总结
昆明文理学院和辽宁中医药大学哪个好 附对比和区别排名
辽宁工程技术大学的劳动与社会保障专业排名怎么样 附历年录戎数线
广东高考排名41470左右排位物理可以上哪些大学,具体能上什么大学
安徽高考排名196040左右排位理科可以上哪些大学,具体能上什么大学
陕西高考排名115990左右排位理科可以上哪些大学,具体能上什么大学
江西高考排名42140左右排位文科可以上哪些大学,具体能上什么大学
牡丹江师范学院在天津高考招生计划人数专业代码(2024参考)
吉林高考排名12950左右排位文科可以上哪些大学,具体能上什么大学
黑龙江高考排名112670左右排位理科可以上哪些大学,具体能上什么大学
新疆轻工职业技术学院的食品智能加工技术专业排名怎么样 附历年录戎数
南昌职业大学和陕西科技大学镐京学院哪个好 附对比和区别排名
河南高考排名435340左右排位理科可以上哪些大学,具体能上什么大学
辽宁对外经贸学院和湖南科技大学哪个好 附对比和区别排名
内蒙古高考排名16110左右排位理科可以上哪些大学,具体能上什么大学
贵州高考排名75190左右排位文科可以上哪些大学,具体能上什么大学
海南高考排名51850左右排位综合可以上哪些大学,具体能上什么大学
四川旅游学院和辽宁工业大学哪个好 附对比和区别排名
浙江高考排名226180左右排位综合可以上哪些大学,具体能上什么大学
山东高考排名509900左右排位综合可以上哪些大学,具体能上什么大学
重庆高考排名111470左右排位物理可以上哪些大学,具体能上什么大学
采购部门年终工作总结模板
临床医学个人实习总结
精循营部年终工作总结范文
珠宝工作总结范文
电话销售个人年终总结范文
新入职青年教师培训会议总结范文
高中数学学习总结
中学教师年终工作总结
中医个人学习总结范文
教师的个人岗位培训工作总结范文(精选五篇)
工作总结与述职报告的区别
班级学期末工作总结
教师常规教学工作总结
写字楼物业管理处工作总结
小学教师的年度考核的工作总结范文