【#实用文# #unity软件工程师工作总结#】总结是对某一阶段相关情况进行分析研究,提炼经验方法和结论的书面材料。它可以指导我们更高效地行动,因此要认真准备一份总结。总结你想好怎么写了吗?以下是小编帮大家整理的软件工程师个人工作总结,欢迎阅读,希望大家能够喜欢。
unity软件工程师工作总结 篇1
我于20xx年xx月加入xxxx至今,严格履行软件工程师的岗位职责,认真学习,努力工作,较好地完成了本职工作和领导交给的各项任务。在这年终之际,现对来公司20xx年的时间里所作的工作汇报如下:
一、思想政治表现
坚持四项基本原则,热爱祖国,遵纪守法,具有良好的思想素质和职业道德,能用xxx的要求来指导自己的行动。积极要求进步,团结友善,明礼诚信。
二、工作情况
1、新产品研发:由于我参加工作较长,在软件行业领域这么多年来积累了丰富的经验。刚进入公司被划分到xxx产品小组,参与了此产品的需求收集、分析、设计编码工作。此产品的前台控制端的框架设计是我采用当今流行的先进技术架构搭建而成。目前此产品雏形已经完毕,处在后期测试完善阶段。当初由于部门人手不够,我与我的搭档相互鼓励,还有部门领导的大力支持,我们每天充满激情的迎接自己的工作。回过头来,看到自己辛勤工作的成果,还是欣慰的。
2、综合事务管理:日常事务性工作都是些琐碎的事情,统计考勤,报销费用、部门审计工作等等。以前我一直做得是自己的专业知识工作,初次接受这些琐碎的工作时我就告诫自己做就要做好,一定做到腿勤、口勤。使票据及时报销,账目清楚,协助领导建立健全各项制度,保持良好的工作秩序和工作环境,使各项管理日趋正规化、规范化。完成办公日常用品购置、上下沟通、资料报刊订阅等日常事务,各类事项安排合理有序。整理部门工作周报、月报,为部门工作的正常开展提供了有效保证。
3、部门项目/产品进度跟踪及归档:我担负着部门项目/产品的进度跟踪工作,为保证文档、代码版本的准确性,我主动联系质量保障部在公司服务器上给我们部门开通了vss空间并且给部门每位员工开通了自己的账户,定时督促部门相关成员把文档与产品代码维护到版本控制服务器上,现在大家已养成习惯,要找文档模板、公司制度等等都会自动去此服务器上寻找,项目阶段性文档,代码也会自动维护进去,我会定时察看并监督。这样保障了代码准确性,公司成果不流失,同时也为同事工作提供便利。
三、存在不足
xxx行业对于我来说是个全新的行业,还有目前工作较繁杂,从而无法进一步提高自己的工作能力。再说计算机领域是个宽广的领域,技术发展是日益月新,计划下一年合理的安排自己的工作,使自己的业务知识与技术水平更有所提高。
以上是我的个人年终工作总结,在以后的工作中,我一定不断加强个人修养,自觉加强学习,努力提高工作水平,适应新形势下本职工作的需要,扬长避短,发奋工作,克难攻坚,力求把工作做得更好。
unity软件工程师工作总结 篇2
一、本年度工作总结
通过一年学习实践,在以下技能上面有了较大进步:
1)对研发、生产各项环节的更清晰认识。经过2x2 Triplexer、ECAN CNU、ECAN CLT几个案子的历练,增进了对设计预研,设计验证,设计导入生产等环节的熟悉程度;同时,更多参与与各部门间的交流,沟通能力得到锻炼,增加了处理各种问题的经验。对产品的研发历程和成本产生等有了一个比较完整的认识;
2)对网络的更深认识。年初花了不少时间对Triple play相关技术的规格,以及实现方案做了很多调研工作。在实现方案调研过程中,查漏补缺,让我对网络的认识更加的完善。硬件上主要有,对OSI七层网络结构模型的更深认识,对PON网络结构有较清晰了解,Ethernet产品的一般实现方案有较深了解,知道了一些路由及交换产品的一般实现方案,还了解到VoIP产品的构成及实现方案等等;软件上主要有,对Linux系统的更深认识,对SIP协议的细节认识,对Router软件实现的认识的加深,以及SIP服务器的移植、使用等;
3)对产品可靠度设计的更深刻认识。包括de-rating,ESD,Hi-pot等设计考虑的深入学习;
4)对硬件基本调试方法的更深刻认识。包括使用万用表,示波器,网络分析仪等设备对产品各参数的测量,并bug shooting等;
5)一些基本的PCB Layout常识学习。对如Signal Integrity,Designe For Manufacturing,PCB Fabrication,PCB过流能力考虑等等,都有了一个初步的认识;
6)对一些元件的更认可认识。在制作采规及元件选用时,及时对各种器件的基本知识做了整理,对电阻、电容、二极管、Power IC等元件有了更加全面的认识。
二、明年工作计划
1、硬件方面
1)学习硬件调试、维修。 增加数字电路调试经验,单片机常用外围单元调试、设计经验等;
2)继续完善各种元件的基本知识;
3)增加PCB Layout经验。
2、Linux编程方面
1) Linux Makefile编程、及shell编程继续学习,以提高工作效率;
2) Linux应用编程继续练习。争取明年一年能熟练Linux应用编程;
3) 继续熟悉Linux系统,可简单进行移植,裁剪,驱动编程;
以上,结合公司project,重点进行强化。
三、个人发展规划
嵌入式技术应用广泛,比如,可作为设备的控制模块,CATV编解码终端中的应用,各种网络设备中的核心控制器模块。嵌入式技术在增加产品附加价值,如易用性、界面友好性等方面表现突出;同时,嵌入式技术又可以快速集成现有技术,IC,或IP以形成新产品,来满足市场需求。综合公司业务范围,嵌入式技术优势,以及个人所学专业知识,未来2-3年内,定位为嵌入式工程师,努力学习相关知识。
unity软件工程师工作总结 篇3
回顾20xx过去工作中的点点滴滴,心中无限欢喜,忙碌且充实、并快乐着。在这一年的工作中既有成长同时也存在着许多的不足和缺点,这都值得去总结、反思、改正和提高。现在我将本年工作做一个简单的介绍,借以促进、提高。
工作情况
今年的工作主要围绕着***和***两个客户系统展开,期间也穿插了一些其他系统中某些功能的编写和改进,这其中有以前从未有过的功能创新也有和客户协调的反反复复功能改进,总体来说还是按时完成了要求的工作任务。
团队合作
项目的顺利进行离不开团队的默契配合和共同的努力,每个项目开始之前,每个人都需要认真的了解项目的需求和开发中需要使用到 的关键技术,对于不清楚的不了解的问题要及时提出,而对于那些在开发中会影响到所有人的决策,要及时的通知大家以尽量减少拖延所带来的不必要的重复程序开发和改动。团队如同一个整体,成员如同四肢和躯干,只有互相配合默契才能走得快走得稳走得远。 团结很重要团队是否能配合默契的先决条件是团队的所有成员是否能精诚合作,大家只有心往一处想劲往一处使才能做到事半功倍。
沟通很重要
每个项目在开始开发之前都需要主要负责人员做详尽的企业背景及开发内容的介绍,以帮助开发人员建立起对项目的整体宏观认识,从而减少在开发中因为理解错误而导致的开发错误。在开发过程中成员之间要积极的沟通和了解系统的开发进度,对于项目中的公共开发资源一经改动要及时的通知项目组其他成员,同步开发资源。
氛围很重要
良好的工作氛围可以有效的激发团队成员的工作积极性,从而达到事半功倍的效果。 工作态度
学会聆听
参加工作7年给我最大的感触就是一定要学会安静认真的.聆听,无论是开会时还是在讨论时,认真听取每个人对待问题的看法,因为每个人思考问题的方向和出发点不同对于问题的理解不同可能有些情况是自己从来没想过的。因此认真的聆听既能尊重他人也能使自己从中受益,这样两全其美何乐不为呢。
积极的心态
对于难度较大的工作要做到冷静坦然积极的面对,不要在还没开始的时候就给自己施加精神心理压力。不要输在起点,因为如果连自己都认为自己做不到那么也就没有以后了,等待自己的是必然的失败,所以保持积极乐观的心态很重要。
今后打算
找方向,抓重点,合理分配时间,谦虚、勤学、总结、提高,争取在有限的时间内用领导认可的方式完成每一项工作,更好的与同事沟通、协调,为客户带来更好的产品和服务。最后也要感谢各位领导、同事对我的信任与帮助。
unity软件工程师工作总结 篇4
20xx年2月2日,我有幸成为xx公司的一员,应聘为公司的java软件工程师。入任职以来,在部门领导的带领下,自己感觉无论学习、技术、生活等方面都有很大的提升。
20xx年里我主要完成的工作有三方面:
一、荆门石油石化巡检系统的调研和开发
该项目是我工作以来第一次涉及到调研,对我来说算是一个不小的挑战。在调研过程中,让我学会了如何通过和客户的沟通来了解客户的需求。由于自己的工作经验不足,在调研工作中体现出一些问题。不能很直接的在和客户沟通中非常准确的了解客户的更多需求,有很多需要和客户交流沟通多次才能明白客户的最终需求,也没有把自己作为最终用户并站在用户的角度上来考虑问题,这些都是我在以后的工作中需要提高和改进的地方。在巡检系统的开发工作中,让我进一步巩固和加强了自己的开发能力。
二、电信12530增值业务的开发与维护
从5月以来我就开始接手公司的主要业务之一,12530电信增值业务。由于前面负责这个项目的同事突然离职,导致这个项目的交接工再做得不够好,对我顺利接手这个项目造成很大的困难。而刚一接手这个项目,马上就需要新上一个投票活动,并要对一些主要代码进行修改,让我倍感压力,几乎都快放弃。最后在金总的指导和鼓励下,顺利的完成这次活动。在完成这次投票活动后,为了避免下一个接手这个项目同事与我遇到同样困难,我第一时间将这个项目的相关技术文档补充完全,保证别人能够顺利的进行该项目工作。通过这个项目,让我加强了自己在高强高压下工作的能力,也让我找到更多自信。
三、襄樊、鄂州家政网络服务中心的开发与实施
在这两个项目中,除了承担开发工作以外,也逐渐涉及到项目管理的职责,让我在个人能力上有所提高。为了这两个项目能够顺利完成,除了完成自己的工作外,还主动关心其他同事的工作完成情况。让我在项目管理和项目进度的把控能力有很大的提高。将襄樊、鄂州家政网络服务中心顺利实施,为我公司拿下湖北省其他市的家政网络服务中心奠定基础。在工作之外,我也注重个人能力的提高。工作之余,主动学习一些新技术,与同事沟通配合,搭建一个ssh的开发框架。也学习SpringSecurity知识,这些新知识的积累,对我以后的工作有很大帮助。
四、20xx年工作展望
1、将学习的SpringSecurity整合到我们自己搭建的ssh框架,进一步完善框架。
2、利用搭建的ssh框架,开发一套oa系统平台。
3、做好襄樊、鄂州家政网络服务中心的维护工作。
4、希望公司能够大量拿下湖北省其他市的家政网络服务中心,继续开发和实施湖北省其他市的家政网络服务中心。
5、继续学习新技术,努力提高自己的个人能力。为以后能够更好,更顺利的工作奠定基础。
6、希望通过自己的进步和努力,能为公司的发展做出自己最大的贡献,体现出自己的最大价值。
unity软件工程师工作总结 篇5
光阴似箭,岁月如梭,辉煌的20xx已经过去,充满希望的20xx已在不知不觉中到来了,现将20xx年从事软件工程师的工作总结如下:
一、项目方面
主要是围绕信号机开发的各种软件,如信号机底层软件、信号机设置软件、以及为了保障信号安全的防火墙软件等,另外还围绕交通诱导屏这个产品做了相关的工作,如诱导屏设置软件,以及诱导屏测试软件等工作。
1、信号机软件开发:从去年的年底已经开始这项工作了,我的工作相对来说比较单一一点,就是信号机设置软件以及底层软件的通讯部分的程序代码,以及其他的部分功能。并且现在这款信号机能够兼容多家协议。
2、防火墙软件的开发:这是独立开发、并最终调试的一个软件,能够严格防止外来非法连接的软件。由于目前还没有我们自己的信号机中心软件,所以目前这个软件现在还没有派上用场,相信随着公司的发展,会逐渐用上这样的软件产品的。
3、交通诱导屏的相关工作:当然这里面的工作就相当砸碎一些,包括设置软件、测试软件以及处理在调试的过程中碰到的一些问题,以及测试一些硬件模块的好坏等。
二、团队合作
从上面主要的工作内容来看,不是我一个人所能完成的,正所谓一切事务离不开团队,个人无法称英雄。今年在xx领导之下,团队建设有了很大的进步,每个项目开始之前,好好的交流、加强了解、对问题的共识、解决问题的方法能很好的统一起来。我个人也很好的溶入这个团队,共同做好一个项目。
在解决问题的过程中,虽然都不时风平浪静,但事后都能够客观地分析,而不参杂个人的感情。
三、工作态度
给我的最大的感触就是一定要好好的去聆听,每个人对待问题的看法,不管他的看法对还是不对,合理与否,或者考虑的角度是否确切,都要好好地聆听,至少要等他说完,如果你主观的色彩,可能你都不愿意或者不屑听完他说的话,但是静下心来你或许也能发现他看问题的某些角度是你没有考虑过的,他想的某些方面也许确实是要注意到的。静心!聆听!把技术与大家共同分享,共同提高。
四、来年工作展望
在新的一年里我希望能够在软件工程行业里做出更多新的产品,能够更加深入的研究下去,比如:目前我们欠缺的信号机中心软件,交通诱导屏的中心软件,这个两个应该是20xx年的`首要任务了,如果还有时间我希望可以做xx系统方面的内容。
unity软件工程师工作总结 篇6
时间一晃而过,转眼间xx年已接近尾声。回首繁忙而又充实的xx年心中不禁感慨万千,过去的一年中通过自身的不断努力,使得技术水平、沟通技巧等方面都取得了一定的井步,当然亦有需要改井的地方,这是我人生中弥足珍贵的经历,也给我留下了精彩而美好的回忆。
非常幸运能够来到xx公司参加工作,上任软件工程师这一职位。回顾业务培训期的一个月工作,感触很深,收获颇丰,我们首先对宽带医生这项业务的前期推出做了很细致的准备,仔细讨论了在业务推出以后可能遇到的种种困难;然后参加了代维部门的实践学习,深入了解了网络的接入技术,以及在修障过程中遇到的问题,接着参加了为期两天的新员工入职培训班,认真听取了相关领导对公司的发展概况,组织结构,以及各部门职责的介绍,并认真学习了公司的基本业务和增值业务,对公司的产品和服务有了很清楚的认识。
后期在主管的带领下,我们陆续对周边保有用户井行了宽带医生免费体验活动,也让用户知道我们这项延伸服务的推出,树立我们xx宽带的品牌形象。
在过去的工作当中,在领导和同事们的悉心关怀和指导下,通过自身的不懈努力,各方面均取得了一定的井步,但那些远远不够,我也在实际工作中认识到自己的不足,业务还不够熟练,很多知识还有欠缺,处理事情不成熟。因此在今后的工作中,我将努力提高自身素质,克服不足,朝着以下几个方向努力:
1、学无止镜,时代的发展瞬息万变,各种学科知识日新月异。我将坚持不懈地加强学习,向理论学习,向专业知识学习,向身边的同事学习,逐步提高自己的理论水平和业务能力,并用于指导实践。
2、“业精于勤而荒于嬉”,在以后的`工作中不断学习业务知识,通过多看、多学、多练来不断的提高自己的各项服务技能,克服年轻气躁,做到脚踏实地,提高工作主动性,不怕多做事,不怕做小事,在点滴实践中完善提高自己。
3、不断锻炼自己的胆识和毅力,提高自己解决实际问题的能力,并在工作过程中慢慢克服急躁情绪,积极、热情、细致地的对待每一项工作,继续提高自身文化的修养,努力使自己成为一名优秀的软件工程师。
4、在工作上积极配合省公司“关于配合全省宽带续费率提升活动开展“宽带医生”服务的建议“的活动;加强对xx宽带医生的业务宣传,增加这些区域的服务量;加大对他网用户的宣传,扩大宽带医生的服务群,争取将用户发展为本网用户;明确宽带医生远程服务软件的一整套受理、安装、服务的流程,加强远程服务软件的推广,将远程服务和上门服务结合起来。
我认为想成为出色的软件工程师不仅仅是软件知识,还有财务、经济、税务、管理等等知识,有空花时间看看,韬光养晦、未雨绸缪。
unity软件工程师工作总结 篇7
一、考核期内主要业绩,工作创新、工作质量及成效:
.5.10-XX.7:联通116114门户网站开发
完成116114网站首页登录及注册、公告模块、红段子短信发送、地区二级联动、及一些公共代码的实现,在这个项目中学习了新的知识freemarker及ibatis,熟悉了jquery的使用,并对统一框架有了一定的了解。并在规定时间内完成了开发任务。
项目描述:
联通116114门户网站主要实现红段子的定制与包月。红段子内容包括短信和彩信。是由用户注册成为会员,自行在网上发布红段子,经审核后发布,再由个人用户到网站上包月或点播定制的一个业务。红段子门户网站建设目的,就是为了满足和实现红段子发布,定制流程
视频黄页个人定制:个人用户通过搜索引擎方式查询视频黄页,不注册也可以进行查询搜索,查询时用户可选择地区,行业,然后输入关键字进行搜索。搜索出结果后,个人用户可点击视频黄页,进行预览或定制或包月
.7-XX.9.15:质检考评系统0502、0503、0504版本测试
这段时间主要熟悉质检系统的业务及需求,学习一些测试的基础知识,如单元测试、集成测试、压力测试、性能测试等,并能使用自动测试工具qtp进行一些重复的需要手动测试的功能,使用loadrunner模拟多个用户实施并发负载及实时性能监测。熟悉web应用在websphere及weblogic服务器上的部署。在测试的这段时间,对质检系统的所有的功能都有了一定的了解,并发现了许多系统以前存在的问题,项目提交测试部之后,没有太多功能上的问题。也为后期参与质检项目开发作好了准备。
但0504版本与其他版本依赖关系比较大,没有测试环境,许多功能没有测试,这个版本出现的问题比较多。所以在以后工作中需要注意这些问题,及时向上级反馈工作中的问题。
.9.15-XX.11.15:质检考评系统0505开发
主要负责计划考评(人工事后,自动事后,轮次)的相关需求、质检标准等功能的实现及其他需求的测试。学习了struts1的相关知识,对质检系统业务有了进一步了解。这个版本的开发都在规定时间内完成了任务,版本质量也没有太大的问题。
.11.16-XX.1.10:甘肃12580项目开发
主要完成彩信模块所有的`功能的实现,主要用到了jquery、dwr、ibatis、spring、boss验证、uma及webservice等技术
.1.11-XX.2质检项目0506开发及测试
二、自我评价:
1.在这半年多的时间里,学习了很多新的知识,都是以前没有接触过的,可能刚工作的时
候有些浮躁,想有新的任务,又害怕做不好,但是最后都能如期的完成领导交付的任务,并学到新的技术,所以,事后会觉得没有什么是做不好的,只要自己动手去做,克服急躁情绪,积极、细致地的对待每一项任务。
2.测试工作,刚做测试工作的时候,大家都不太愿意去做,一是觉得自己不会这技术,
二是觉得自己的初忠是搞开发这一块,刚出来就做测试,也没有什么经验,总觉得不合适,但做过一段时间后,我深刻感受到开发的做测试的一个好处(当然是没有接触项目前),根据项目需求,可以很快的熟悉项目的业务,不再局限于做开发的只熟悉某一个模块的功能,而不了解其他模块的实现。并且,在以后做开发的时候自己会考虑更全面一些,思维也拓展更开一些。
3.在工作中需要不断的学习,通过项目不断提高自己的各项技能,做到脚踏实地,不怕多做事、做小事,在点滴实践中完善提高自己。
4.在工作中可能会遇到一些纠结的小问题,自己可能花很多时间也解决不了,如果多问问同事可能很快就可以解决问题,所以,不用爱面子,多向同事请教,但也不是有问题就问。
5.这半年工作时间里,发现和解决问题的能力,个人的技术都有了很大的提高,在项目中遇到问题,不会再像刚开始不知道从何下手,不知道如何去定位一个问题,而现在都能较快的处理在工作中遇到的问题。
三、工作中主要的问题和不足:
1.技术水平有待提高。自身的能力提高了,做事的效率也会高一些,不然,许多技术都是现学现用。会浪费许多工作的时间,可能延迟项目进度。并且刚开始只考虑到如何实现,并未考虑到性能和一些设计层面上的问题。
2.工作缺乏计划,未及时总结当天完成的任务及学到的新的知识。如果当天不制定计划,
可能会这件事做会,那件事做会,没有目的性,没有时间紧迫感,浪费许多时间,也不明确工作重点,造成事倍功半的效果。工作不及时总结,可能一段时间内不知道自己做了些什么,学到了些什么,自身能力到底提升了多少。
四、对今后工作的思考:
1.制定详细的学习计划,系统学习一些专业的知识。工作更加细心、仔细,加强责任心,不断提高自己分析问题和解决问题的能力。
2.在数据库方面有所突破。
3.多看源码,弄明白用到技术的原理,让自己软件开发的思想更全面一些。
4.在工作中要及时向项目经理反应自己的工作情况,包括已完成的任务及工作中存在的问题,提高工作的主动性。
5.注重团队合作,养成总结与反思的习惯,并有意识地提炼日常工作成果,整理成文档,以便以后遇到类似问题能够很快解决问题。
unity软件工程师工作总结 篇8
20xx年2月2日,我有幸成为北京超图一员,应聘为公司的java软件工程师。入任职以来,在部门领导的带领下,自己感觉无论学习、技术、生活等方面都有很大的提升。
20xx年里我主要完成的工作有三方面:
1、荆门石油石化巡检系统的调研和开发。
该项目是我工作以来第涉及到调研,对我来说算是一个不小的挑战。在调研过程中,让我学会了如何通过和客户的沟通来了解客户的需求。由于自己的工作经验不足,在调研工作中体现出一些问题。不能很直接的在和客户沟通中非常准确的了解客户的更多需求,有很多需要和客户交流沟通多次才能明白客户的最终需求,也没有把自己作为最终用户并站在用户的角度上来考虑问题,这些都是我在以后的工作中需要提高和改进的地方。在巡检系统的开发工作中,让我进一步巩固和加强了自己的开发能力。
2、电信12530增值业务的开发与维护。
从5月以来我就开始接手公司的主要业务之一,12530电信增值业务。由于前面负责这个项目的同事突然离职,导致这个项目的交接工再做得不够好,对我顺利接手这个项目造成很大的困难。而刚一接手这个项目,马上就需要新上一个投票活动,并要对一些主要代码进行修改,让我倍感压力,几乎都快放弃。最后在金总的指导和鼓励下,顺利的完成这次活动。在完成这次投票活动后,为了避免下一个接手这个项目同事与我遇到同样困难,我将这个项目的相关技术文档补充完全,保证别人能够顺利的进行该项目工作。通过这个项目,让我加强了自己在高强高压下工作的能力,也让我找到更多自信。
3、襄樊、鄂州家政网络服务中心的开发与实施。
在这两个项目中,除了承担开发工作以外,也逐渐涉及到项目管理的职责,让我在个人能力上有所提高。为了这两个项目能够顺利完成,除了完成自己的工作外,还主动关心其他同事的工作完成情况。让我在项目管理和项目进度的把控能力有很大的提高。将襄樊、鄂州家政网络服务中心顺利实施,为我公司拿下湖北省其他市的家政网络服务中心奠定基础。在工作之外,我也注重个人能力的提高。工作之余,主动学习一些新技术,与同事沟通配合,搭建一个ssh的开发框架。也学习springsecurity知识,这些新知识的积累,对我以后的工作有很大帮助。
20xx年工作展望:
1、将学习的springsecurity整合到我们自己搭建的ssh框架,进一步完善框架。
2、利用搭建的ssh框架,开发一套oa系统平台。
3、做好襄樊、鄂州家政网络服务中心的维护工作。
4、希望公司能够大量拿下湖北省其他市的家政网络服务中心,继续开发和实施湖北省其他市的家政网络服务中心。
5、继续学习新技术,努力提高自己的个人能力。为以后能够更好,更顺利的工作奠定基础。
6、希望通过自己的进步和努力,能为公司的发展做出自己的贡献,体现出自己的价值。
unity软件工程师工作总结 篇9
一、工作内容
20xx年过完年后,我被主管派到一个大组去学习自动化测试技术。这个测试组是个比较大的测试组,总共有几十号人,其中有很多牛人。他们的自动化测试框架就是由几个牛人耗时1年多开发出来的。到现在,他们的自动化用例覆盖率约50%,应用率好像有70%,总之这个自动化测试框架还是满厉害的,不过就是整个框架实现太复杂了,涉及的编程脚本就用了三种。
下面简单介绍一下该GUI自动化测试框架。
测试工具:IBM Rational Robot
自动化测试技术:第三代自动化测试框架
测试脚本:Robot中使用的是sqabasic脚本(基于basic的一种脚本),另外还使用了TCL、COM组建等,并自行开发了一个抓包工具用于自动化测试。还有我们测试的产品界面是使用Java开发的,如果要让Robot能够正常识别界面,还需涉及到Java编程。
学习自动化的头一个星期,我只是学习该测试组的产品知识,学习如何使用自动化测试。后面的几个星期就开始承担自动化测试的建设任务了。想想当初自己还是满辛苦的,白天上班学习产品知识,晚上回家就对着电脑看basic脚本的语法,周末还去公司无偿加班看代码。
在技术文档的选择上,我基本只看英文的,单词不懂就拿金山词霸查,实在看不懂了才会去找些中文的资料看。为什么要选择英文的呢?因为很多中国写书的人很浮躁,只想着快点把书出版了好赚钱,所以很多中文的资料质量很差。首先要贬低的就是那本谭教授的《C语言程序设计》。记得读大学时,照着谭教授的书敲程序,没多少程序能编译通过的,真是误人子弟。
当时带我学习自动化的导师姓L,他是个大忙人,有时一整天都在开会。L的师傅姓W,W是该自动化创始人之一。
当时对我比较有用的文档就只有两篇:一篇是汇集型的chm文档,是篇比较全面的介绍,其中包括自动化框架的介绍,原理的介绍,各模块介绍,自动化执行的流程等;另外一篇则是由W写的自动化建设指导书,写的还是满不错的,在我有一定基础后,照着指导书就能完成简单的自动化建设。
在我整个学习过程中,是按照以下的过程开展的:
1、吴江装修网初步了解整个自动化和产品知识,尝试使用自动化进行测试;
2、熟悉sqabasic语法;
3、对着文档读代码,尝试调试脚本,跟踪到代码的最底层。
其实最好的学习方式就是实践,去做自动化建设。当有一定基础后,去完成导师交给的自动化建设任务,就是最好的学习方式。后来,我教别人的时候,也是安排实际任务给他做,然后再进行相应的引导。
在我的学习期间,有件事情让我满讨厌的。就是我必须给原部门的主管和测试组人员讲课,然后那些家伙会不停的提问,以检验我的学习效果。虽然这招很BT,但是对个人的成长还是满有利的。假设你学会了一项技能,此时你可能只在第一个层次上,如果你能够把这项技能教会别人,那么你的层次上升了一个档次。
记得当时是20xx年2月初去参加学习的,4月初就应急被调回原测试组了。总共不到两个月的时间,我总共完成了3个模块的自动化建设,第1个模块搞了3个多星期,第2个模块不到2个星期,第3个模块一个星期就搞完了(第3个模块算是友情支援呢,哈哈)。
4月初被调回原测试组后,就一直做救火的工作。差不多5月份的时候才正是开始做我们T项目的自动化。其实也就是把我学习的自动化框架移植过来,做T项目自动化测试。
另我比较遗憾的是,T项目的测试一直都很紧,而自动化测试并没有被推广和充分利用。直到我离职前,测试组为应付测试部自动化考核指标,才得到重视。
这里我谈一下自己对自动化测试的理解。
1、自动化测试用于提高测试效率;
2、自动化测试可以完成一些无法手工完成的测试,例如长时间不间断的测试;
3、自动化虽然能够发现问题,但主要是对继承的功能进行测试,保证以前的老功能。(这个跟项目有关,GUI自动化测试比较复杂,如果是嵌入式设备或芯片的自动化测试,对自动化测试的理解可能会不一样)
二、开发小工具
我在自动化学习期间,表现出来的专业技能和良好的学习能力,得到了同事和主管的认可。鉴于此,在4月中旬的时候,测试组的Leader给我安排一个任务,使用Excel表格开发一个工具,用于收集和统计记录的数据。要求该工具能够代替手工计算,提升测试效率。任务完成的截至日期是五一。给我安排的时间大概为一周。
该工具的实现方式并不难,就是设计一个Excel表格,然后在里面嵌入VBA脚本,以宏的方式代替手工计算。对我来说最大的挑战就是:
1、短时间内学会VBA编程;
2、提取需求,设计Excel表格的格式,使该工具具有较好的易用性。
当我接到任务后,下班回家就开始到网上搜集关于VBA资料。当时我找了一个星期,都没有让我满意的文档。最终只找到一篇国人写的PDF文档,但是那篇PDF文档只是让我初步了解了VBA是个什么东东,并不能满足我的实际需求。最终,在写VBA脚本期间,我还是参考微软自带的帮助文档搞定的。
本来计划是在四月底的一个星期开展该项任务,但实际上直到4月的最后两天我才有时间。记得当时,我花了一天半的时间与我的客户——也就是我的同事,共同讨论需求,并设计Excel表格的格式,让其评审。最终写脚本花费了4月的最后一个下午,以及五一期间的三个下午的时间,总计4个下午的时间,完成该工具的开发。而且我五一期间的工作并没有申报加班,是无偿劳动啊。
其实工具开发完成后,还是有些问题,如:
1、程序崩溃
2、有1/3的功能基本没有被使用
3、自动生成的表格,奇丑无比
三、负责M项目测试
20xx年10月份,我开始独立负责M项目的测试工作。M项目是个小项目,大体情况如下:
代码量:大约10K行
开发语言:C#
软件环境:Windows PPC 20xx
硬件环境:hp的PDA
人力投入:开发3人,测试就我1人
M项目的测试需求分析、测试设计、测试用例编写、测试执行到测试报告,全部由我一个人搞定
20xx年10月~12月中旬这段时间,主要是完成前期的测试分析与设计。12月中旬,就进入了实际的测试阶段,20xx年1月底,软件发布。回顾这4个月的工作,有做的好的,也有做的差的。下面对这些进行总结。
做的比较好的:
1、测试进度把握比较好,在规定时间内,甚至提前完成了测试任务;
2、与开发人员的沟通较好,使问题能够较顺利的解决,基本没有内耗,双方合作愉快;
3、测试的重点把握较好,把很多严重问题,在测试前期就给暴露出来了;
做的不好的,待改进的:
1、前期的测试分析能力较弱,测试规格分析不全,测试用例编写质量不是高。到后期测试时,才发现很多规格没有覆盖到,需要补充测试用例。而且之前写的测试用例与实际测试情况,有些偏差,用例的可用性差,又花了很多时间去修改用例。
2、前期的测试计划制定比较差,实际工作较之计划偏差过大。吴江装饰网反正10月、11月那段时间,M项目的工作是乱七八糟的,还好关键时间点的把握还算到位。
3、测试对象选择上疏忽,导致漏测。M程序是个工具软件,主要用于查询和设置设备的某些参数或配置。我当时只考虑到对所有支持的设备进行遍历,却未考虑到设备上所有单板的遍历。结果技术支持工程师到香港试用该工具时,发现某块叫PM1D的单板无法识别。后续,我们对大部分单板进行了遍历,还发现了很多隐藏的问题。这是一项较大的疏忽。
4、在做内部模拟试验局测试时,对测试环境的选择有较大疏忽,导致漏测。在做内部试验局的时候,我为了偷懒只选择了3个不同设备的组网测试,而没有考虑到大规模组网情况下的测试。后来,技术支持工程师拿M软件到广州试用时,程序的某项功能就不正常了,原因就是大规模组网时,通信数据的传输是多包的,而M程序的底层函数没有对多包的情况进行处理,导致该项功能不正常。当时,在其他实验室是有类似环境的,而我却为了偷懒: (
虽然M项目的测试有很多不足,但是总体情况良好,我对产品的质量有信心: )
四、救火
大概是20xx年7月份时,我们组组长跟我说,要派我到B组去学习3个星期。等我去了B组才发现自己是被派来救火的。来B组支援测试,主要是完成一项测试任务,说具体点,就是把一件事情干600多次,没任何技术含量。我当时真是郁闷坏了: (
虽然心底是比较郁闷,但毕竟也就3个星期,想着忍忍就过去了。
具体的任务很简单:大概有80种板子,每种板子大概有8套软件,用T工具对80多块板子把8套软件都加一次,观察软件加载过程中,业务是否正常,板子加完软件后,运行是否正常。
还有一个也是其他组借调过来的新员工,跟我一起干这件事情。我600多次,他也差不多600次。还好这个家伙,心态很好,做事情也很勤奋。
最初B组给的方案是这样的:先用第1套软件把80多个板子加载一遍,再用第2套,第3套,直到第8套。
开始工作几天,我们就按这种方案执行,但按这种方案执行的效率很差。主要因为实验室常用的板子差不多只有30块,其他的板子都藏在箱子里,而且有些板子B组根本没有,需要到其他项目组去借,这样针对软件版本,对80多块板子进行轮循加载,效率就很低,因为每加一套软件,就要去寻找80多块板子。
当时,我和那个新员工都很愁,按照这种做法,这项任务3个星期根本就无法完成。B组负责带我们的两个员工,也表示比较无奈。
郁闷过的第2天一早,我就直接找B组的老大谈话,“按照你们提供的这种方案,我们在三个星期内根本无法完成任务,而且还有诸多其他困难:
1、部分板子是坏的;
2、某些板子实验室里根本就没有;
3、对设备不熟悉。”
就这样,B组老大把组内相关骨干人员都叫过来开会,重新商讨了一套方案,并要求他们全力支持我们的工作。
开了会后,B组的人就比较支持我们的工作了,启用新的方案后,还提前了1天时间把工作完成: )
这里我体会比较深的是:在做一份工作前,一定要弄清楚这项任务到底要做些什么、要怎么做、要做到什么程度,工作中还要定期汇报工作(基本上以日报、周报的形式,用邮件发送),如果出现了解决不了的困难,一定要向老大汇报,如果老大也解决不了,那他也不能责怪你无能: )
五、工作中的陷阱
在辞职前的几个月,有个师弟也是老乡X君,得知我做过自动化项目后,便来向我了解自动化测试相关的情况。
从与X的聊天过程中了解到,他也正在做自动化,他们组测试的产品规模比较大,不过做自动化的只有两个新人,而且是使用一种新的GUI测试工具。他在给我讲他们具体工作时,了解到他们的自动化测试非常原始,就是针对一个用例录制一套脚本,几百个测试用例,大概录制几百个脚本,根本没有对公共进行提取,更别提有什么自动化测试框架了。X君与另外一个人,在自动化方面都是新手,没有相关经验,他们不知道这样做会给后期的维护带来多大的麻烦。而且他们主管也不太懂GUI测试的自动化,只是每天要他们汇报工作进度,期望在两个月内完成那几百个脚本。
经过我细致询问后,我猜测他们做这项自动化工作,基本上是为了应付部门自动化考核而做的,而并非为了提高测试效率,保证产品质量。
我也可以体谅X君主管的难处:测试组人力本来就紧张,而部门又要考核自动化指标,他只有弄两个人来应付一下部门的考核了。
这样说来,X君和他另外一位同事就是受害者了,被安排做一件这么没意义的事情。对他们我只能表示同情了。
对于这类BT主管吩咐的没啥意义的事情,我的体会就是能推掉不做就不做,如果实在推不掉,就完全按照他的意思做,他要怎么做就怎么做,要做成什么样就做成什么样。实在搞郁闷了就老板炒鱿鱼吧。
六、其他
记得刚进公司那一阵,对我们新员工有这样那样的培训,估计转正前至少被培训了20门课吧。具体讲的都是产品知识、测试技能、编程方面的东东。那些讲课的老师水平也参差不齐,PPT写的水准也有好有坏。总体感觉就是那些培训是在浪费时间,如果自己看这些资料效果都要好很多。
在转正前,作为新员工要给部门的“老”员工讲课,讲自己所学习过的知识,然后下面的“老”员工会发狂了似的问你问题。现在我感觉这种方式真的是一种非常好的检验方法,不但检验了你的学习情况还锻炼了你讲解PPT的能力。
七、感悟和进步
通过这种方式,我觉得自己在很多方面有提高:
1、写PPT的水平。后续工作中,写PPT汇报工作,做的是又快,又漂亮。
2、沟通能力。最初别人问我一个问题,我还没完全理解他的意图,就以自己的理解,淅沥哗啦的说了一堆别人不想知道的东东,搞得别人一头雾水。此后,别人每问我一个问题,我都会先把他的意图或意思搞搞清楚了,确认后,再以最精练的语言来回答他的问题。
3、懂就是懂,不懂就别乱说。记得最早“老”员工问我一个我自己不是很懂的问题,我通常是按自己的理解方式,跟他胡吹一通。结果他再一细问,我就傻了。知道就知道,不知道就别乱说,这点很重要,尤其是在参加面试的时候,如果自己不是很动,别人一问你就会露馅。