软件工程学科竞赛心得体会报告 软件工程课程总结,心得(七篇)

  • 上传日期:2023-01-11 10:52:44 |
  • ZTFB |
  • 8页

心得体会是指一种读书、实践后所写的感受性文字。好的心得体会对于我们的帮助很大,所以我们要好好写一篇心得体会以下我给大家整理了一些优质的心得体会范文,希望对大家能够有所帮助。

推荐软件工程学科竞赛心得体会报告一

一、财政局项目,本人独立负责开发会计处的三个子系统:

1、会计人员信用查询系统。

2、代理记账机构信用查询系统。

3、会计人员网上报备系统。

以上三个子系统上线后,方便了社会各界查验会计人员的真实信息、方便了查询合法的代理记账机构信息,以及方便了各单位对会计人员的报备。

二、餐饮行业项目,在团队开发项目中直接参与了豪享来餐饮有限单位总部的信息综合管理平台项目,主要负责的系统有:

1、房屋租赁合同管理系统。

2、短信收发管理系统。

3、会员管理系统。

4、基础信息管理系统和人事管理系统的部分功能模块。

系统应用后,豪享来在管理全国各门店房屋租赁合同上,一定程度上提高了管理效率,并且及时有效提供了相应预警信息;短信收发系统方便了总部及时传递各项信息;会员系统更好的管理全国各门店的会员信息;人事系统在管理中减少工作量等。

三、_行业项目,我参与了中国银行厦门分行,企业转账管理系统中的部分模块开发。本系统方便了企业快速实现大量和复杂的转账工作。

四、国土资源与房产管理局项目,正在负责和开发的是住房货币化补贴网上申报审核系统。本项目采用了新技术,使界面更加大方美观,很大程度上改善人机交互平台的效果。

总结不足:驻豪享来总部做项目时,由于团队内部某些原因,加之外面的其他因素,一定程度上影响了工作效率、影响开发进度和影响最终软件质量;这是包括我在内项目组中的每个成员都必须检讨的地方。

通过总结一年来的工作,尽管有了一定的进步和成绩,但在一些方面还存在不足,个别工作做得还不够完善。在今后的工作中,我将努力找出工作中的不足,以便在日后的工作中加以克服。自我不断的学习吸收新技术,认真学习好规范规程及有关文件资料,并且及时的把新技术应用在实际的项目中,进一步提高项目的技术含量。

推荐软件工程学科竞赛心得体会报告二

从八月份入职至今,已一年过去了,回顾自己这段时间在xx公司所走过的路,所经历的事情,没有太多的感慨,没有太多的惊喜,却多了一份镇定,多了一份从容。

回想入职初,在x月份,从开始第一周熟悉工作环境,第二周便参与煤矿安全生产管理系统的相关文档设计工作,期间在项目组各位同事的指导、安排下,进行了系统的软件开发委托合同书及系统功能模块设计说明文档的编写,也借此过程学习煤矿生产业务。

在x月份,便正式参与了管理软件功能模块的设计工作,在指导、讲解下初次尝试完成了管理软件的维护子系统的功能模块设计;在九月中旬跟随公司施工人员在一号矿进行业务调研,从而在我们自己的管理系统中,取其长、补其短,也借此机会了解实际的煤矿生产情况,加深对煤矿产业业务流程的理解;在九月底便根据张工的指导开始工程技术文档子系统的功能模块设计。

x月份,在指导下,进行了物资管理子系统的功能模块设计,并就设计的正确性、合理性分别同及进行讨论;到十月中旬管理软件的各子系统功能模块基本全部设计完成;十月底,根据各子系统模块设计搜集系统数据,建立初步的数据字典及概念模型,为后期数据库设计做准备。

x月份的工作以整理系统业务关系与业务流为主,但由于业务关系图的表现形式不够合理,不足以清晰、明了得表现出各层次关系,导致工作多走了几个环节,好在张工张工及时发现问题,并多次向我指导、讲解,最终决定以列表结合流程图形式搜集、汇总系统所有子模块的业务动作、涉及人员及联系模块,为后面工作的展开提供依据。

围绕两个工作展开,一是系统业务描述文档的设计编写,因为该文档是日后编程人员了解煤矿生产业务、系统功能及数据库设计的主要依据,也多次强调,文档的设计务必从读者角度考虑问题,因此最终设计由简单到复杂,由整体到具体,各层次尽量做到衔接紧密,易于理解;另一项工作是针对已完成的关系列表、系统功能模块设计的业务合理性、正确性和逐条讨论,并将设计中出现的问题逐条记录在问题跟踪文档中。月底的工作便是根据问题跟踪文档对模块设计进行修改、完善。

在公司领导的带领下,通过项目组所有成员的不懈努力,在xx月份系统所有功能模块设计完成,在xx月份系统所有业务流程整理完成,在xx月份,对各功能模块设计及业务流的初次审查、整改工作已经完成,现在已开始进行项目组内对各功能模块设计及业务流的审查工作。

在入职初期,因为之前很少接触生产类软件,一时不知从何入手,好在项目组成员多次向我讲解,加上自己也通过网络查找相关文档,认真阅读相关材料、思考业务处理过程,最终在一个月内便对煤矿整个生产管理业务有了较为系统的认识。之后在指导下,完成了管理软件初始化子系统、工程技术文档管理子系统、物资管理子系统的详细功能模块设计和业务处理设计,以及整个系统的业务整理工作。因为多次强调前期的业务及功能模块的设计直接关系到整个项目最终的成败,一定要做到设计正确、准确、完整,因此在每个子模块的设计中,先把握总体方向,确保设计正确,再搜集大量业务材料、对比其它类似软件处理方式、结合煤矿实际生产情况、思考业务处理流程确保设计准确,最后再将设计放到整个业务系统中,反复检验、审查,确保设计完整。回顾这一段时间的工作,我基本完成了本职工作,这与领导的支持和各位同事的配合、帮助是分不开的,但同时我也清楚得认识到自己还有很多不足,也从中获得不少经验、教训,总结为以下几点,

1.做事前准备、计划是很有必要的

这一点在入职第一周业务学习及近期搭建各模块业务关系工作中就体会特别深,正是磨刀不误砍柴工,做好准备、计划对之后的工作能起到事半功倍的效果。

2.工作要脚踏实地、一步一步,切不可太过心急

整个软件的设计从最开始的业务调查、模块框架设计、业务流程设计到具体软件开发设计,每个环节都是建立在前一个环节的基础上,每个环节上的失误都会影响到之后所有环节。

3.学会从整体看问题

这一点在入职初期的业务流程学习中就感受很深,从整体看问题,从主业务流程入手,理解更容易,学习得也更快,在整个工作过程中大的方向也不会错。

4.要学会适当的思维转变

之前的软件开发工作主要是编码工作,所考虑的问题也只局限于技术方面,但在系统业务及功能模块设计工作中,一定要考虑到整个煤矿产业的业务流程和客户群的操作习惯。

5.与同事的交流要及时要充分,尤其是项目组内成员

及时充分的交流能快速解决疑惑、能使整个工作衔接更紧密、能使问题考虑更周全。充分的交流能保证工作的质量,及时的交流能提高工作的效率。

6.在系统设计过程中要学会从客户角度考虑问题

软件良好的客户体验是衡量软件质量的重要标准,因此在软件设计过程中一定要考虑使用软件的客户范围、客户的操作习惯和软件的易操作性。

7.处理问题一定要以公司利益为重,坚持立场、把握好原则

公司项目部成员对**1号矿项目的成功实施便证明这一点;另外在集控平台开发过程中,何工也是基于这一点,多次对系统功能设计提出更高要求,以使系统功能更加完善、可操作性更强。

8.要学会思考问题、分析问题、处理问题,学会分解问题,把一个大的问题分解成若干个小问题,再将各小问题放到整体考虑其合理性。

在整理系统业务流程和搭建模块间业务关系工作中,就因为表现形式不够清晰、合理,做了不少重复工作。最终还是在张工的指导下,以“总—分—总”的形式解释业务关系,完成了业务详细说明书。

9.不要局限于固定模式,要学会创新

20xx年已经过去,崭新的xx年来临了,在新的一年里,工作上,生活上,我们都站在了新的一个工作起点,要开始新的一轮工作,我也在此感谢领导和各位同事的支持和帮助,我将在新的一年里继续努力,不断提高自己的业务及专业水平,虚心向大家学习,为xx公司为长风的发展尽自己的力量。

推荐软件工程学科竞赛心得体会报告三

总想着每天、每个月、乃至每年都有点进步。20xx年,对我来说,是起伏不定的一年,也是收获颇丰的一年。当然,最大的收获是有了一个可爱的女儿。

在这一年,我跳了两次槽,一次是自愿的,还有一次是被迫的。我目睹了一些公司从盛到衰的过程,也看到了一些脚踏实地的公司。

离开x1公司,是因为我觉得x1公司不是在做软件,所谓的印度模式,我想,绝对不是这么做的。理想不合,不想浪费时间,也只能背负跳槽的恶名,挂冠而去。去x2公司,是因为看到他是美国独资公司,做外包软件,能够接触美国的客户和技术,希望能够有所收获,何况,职位也不错。的确很想好好做,也跳累了,只想稳定发展,毕竟,是做父亲的人了。没有想到的是,竟然让我目睹了一场资产争夺的好戏。公司易主,流言满天,诽谤四起,官司大战,这种平常只有在电视和电影里看到的情节,我实实在在的亲身经历了,也算是人生的重要一课吧,至少,让我看到了人性最阴暗和恶毒的一面。自然,是做不下去了,只能又走。

也看到了一些踏踏实实做事情的公司。园区的瑞博软件就是一个。很少看到如此踏实做事的公司。若干年后,只要他能够存活,必定是一个成功的公司。虽然老板对我也很有诚意,只是,对于教育软件,我实在没有太大的兴趣,何况,如果想做教育,我何不选择安博呢?毕竟,安博给于我很多。回头想想,在其他公司,我都是在奉献,只有在安博,是学习了很多。

说起跳槽,其实,看看那些公司,有多少是在踏踏实实做事情的?老板本不懂软件,都是看着软件行业能赚钱,想来捞一票,结果把中国的软件行业做坏了,也害苦了中国的程序员。自己不好好做事,怎么怪别人跳槽?同工作经历的坎坷相比,,在个人能力方面,今年的进步是非常大的。今年上半年,我的进步集中在技术领域。我更加深入研究了设计模式、平台,还有uml建模,终于有所突破,平台的系统架构和开发工具,并且得到了应用的证实。在网上也陆续发表了一些文章,受到比较好的欢迎,还上了赛迪网的开发之星。

下半年,在软件工程方面收获是很多的。

看到网上对于印度模式从吹捧到批驳的吵闹,也看到x1公司学习印度的失败,加上自己从开始就对那些记者的怀疑,决定好好学习软件工程。我一向认为,任何东西,不能道听途说,只有自己好好深入研究,才能得其精髓。同时,软件工程绝对不能只看印度的,毕竟,美国才是软件业最发达的国度。

列举一些学习的参考资料:《rup软件工程过程》、《msf微软解决方案》、《xp极限编程》、《cmm实践应用——infosys公司的软件项目执行过程》、《人月神话》、《软件需求》、《软件工程java语言实现》。每本书,我都仔细研读了,颇有体会。

我开始就想,印度软件工程绝对不会象那些记者所说的那么简单,所谓的高中生编程说。所以,我必须实际看看印度的软件工程。《cmm实践应用——infosys公司的软件项目执行过程》,是印度最大的软件公司infosys公司的分管质量的副总裁写的,介绍他们的cmm4的软件工程,果然不同凡响。这是我了解印度软件工程的主要窗口。

首先,同原来的想法不同的,也可能同大多数人(尤其是受那些软件记者影响很深的“专业”和非专业人士)想法不同的是,软件工程实际上不仅仅只是管理,而是一门涉及很广的交叉学科。在软件工程中,大约一半的内容是专业性很强的,涉及到软件分析、设计甚至编码的技术。所谓的结构化、面向对象,都在软件工程的范畴内,同样是软件开发和组织的重要内容,也是软件质量保证的重要内容。至于软件开发的管理部分,只能算是软件工程中软件工程过程的部分,或者说项目管理部分。脱离管理来开发软件是绝对不可行的,同样,抛弃技术基础,空谈管理出效益,便如无源之水、无本之木。诚如《软件工程java语言实现》中所说:“软件工程范围极为广泛。软件工程的某些方面属于数学或计算机科学,其他方面可归入经济学、管理学或心理学中。”在这里,我强调了软件工程中的技术部分,并非轻视管理,只想在软件工程的概念上做一些拨乱反正,也希望多一些人来关心软件的核心技术,而不要空喊口号和概念。毕竟,中国的软件太缺乏核心技术了。

其次,对管理要求的严格不说(这个谁都知道),实际上,不管是美国的软件工程,还是印度的软件工程,都是比较灵活的。即便是印度这样的所谓“软件工厂”模式,对于软件工程过程管理极为严格,也有一个部分是专门讲述过程剪裁的。整个软件工程过程是非常庞大和繁复的,然而,由于项目具体情况不同,如项目的规模,参与人员的数量、素质等的不同,对于软件过程的每个部分,不是都必须的,可以根据具体情况来进行剪裁。这个部分对于我的启发是很大的。以前做什么iso9000等,开始做了一个以为很好的规范,但是,到具体项目,总是对不起来,到处有问题,现在想想,便是少了这个变通的部分。不过,话说回来,这cmm也是老美想出来的,而不是印度。

第三,对于开发人员的选用,我发现,美国人是非常注重选用优秀的开发人员的。martin fowler曾经开玩笑的说,如果给他一批水平不高的开发项目,他会考虑全部解雇,重新招聘。《人月神话》中也说,如果200人开发一个项目,其中25个人最能干,那么会考虑解雇其余的175个人,让项目经理来编程(当然,后面还有一些抉择分析,这里断章取义了)。其结论的基础是基于以下研究结果:优秀的开发人员和差的开发人员,其效率之差可以达到数量级。另外,从管理的角度来说,只有人多了,才会有管理问题,当团队规模控制在一定的范围内时,便不会有太大的管理问题。

对于软件来说,很难实现同传统产业一样的工厂化生产,这是由软件开发的本质决定的。软件的复杂性是软件的本质属性,在这个属性没有改变之前,软件便不会实现同传统产业一样的工厂化生产。至于印度的所谓“软件工厂”,实际上,只是完成了软件代码的编写工作,并不是实现了整个软件研发工作,而代码编写工作,恰恰是软件开发中最简单的一环。至于印度是否真的有很多高中生程序员,印度人的书上没有说,记者到说了不少,我也无从考证。所以,软件的开发,还是需要选用优秀的人的。除非,公司只想帮别人编写代码,而不希望有自己的产品和技术。

第四,软件开发中,最重要的还是团队合作和交流。这个是我目前最深切的感受。具体的,大家都知道,也用不着多说。

最后,对于软件开发来说,公司老板的想法是最重要的。如果老板说“no”,那便是水平再高,管理再好,也终归无用。年龄渐长,也做父亲了,却总是在漂泊,没有一个可以稳定发展的地方。希望目前的公司能够有这个机会。不想总是跳槽。

推荐软件工程学科竞赛心得体会报告四

基本信息 个人相片

姓名:性别:男

民族:汉族出生年月:1987年9月8日

政治面貌:党员婚姻状况:未婚

身高:155cm体重:60kg

户籍:四川成都现所在地:四川成都

毕业学校:成都理工大学学历:本科

专业名称:软件工程毕业年份:2015年

求职意向

职位性质:全 职

职位类别:行政/后勤、

职位名称:软件开发工程师

工作地区:成都市 ;

待遇要求:1500元/月 可面议 ; 需要提供住房

到职时间:一周内

技能专长

语言能力:英语 cet4 ;

教育培训

教育经历:时间所在学校学历

2011年9月 - 2015年7月成都理工大学本科

培训经历:时间培训机构证书

2014年8月 - 2014年9月××软件

其他信息

自我评价:冷静、稳重、理性、踏实、能吃苦、适应能力强。

发展方向:思考问题客观理性;做事踏实、稳重;遇事沉着、冷静;适应能力强,善于学习、总结;并能清楚地认识自身价值,不好高骛远、实事求是。在上学期间曾担任过班长、学习委员等职务,能团结他人、积极合作、共同进取。文笔较好,曾获区级作文 竞赛一、二等奖。

联系方式

联系电话:×××××××××××

电子邮箱:

推荐软件工程学科竞赛心得体会报告五

职责:

1、负责系统的上线实施和运行维护工作,保障系统的高可用和运行效率;

2、提供7*24小时稳定可靠的线上基础服务,完善系统的监控报警和安全防护;

3、负责项目持续集成ci/cd环境的搭建、维护和优化;

4、负责自动化运维工具开发,提高运维、开发协作效率,规范操作流程;

5、主动发现生产环境的问题和隐患,通过开发或推进自动化运维工具来降低手工操作的维护成本;

6、负责线上应用服务的维护,协助开发进行性能优化,问题跟踪,具备快速解决运维线上实际问题的能力;

7、负责线上数据库的日常维护、升级和监控管理工作。

任职要求:

1、3年以上运维工作经验,本科及以上学历,计算机或相关专业;

2、熟练掌握shell脚本语言,有python实际项目实践者更佳;

3、熟练掌握linux系统和网络基本协议,熟悉dns和tcp/ip协议,具备nginx、tomcat部署及性能调优的经验;

4、掌握ci/cd持续集成工具(如jenkins),了解持续集成、持续交付和devops理念;

5、掌握至少一种监控软件的使用,如zabbix、nagios、prometheus,完成对系统性能、可用性的监控;

6、掌握至少一种配置管理工具,如ansible、saltstack、puppet等;

7、掌握mysql数据库的日常维护管理,了解常用监控指标,具备sql调优能力更佳;

8、有百台以上服务器管理经验者优先考虑;

9、对docker、kubernetes有实际项目经验者优先;

推荐软件工程学科竞赛心得体会报告六

20_年已过去,在过去的一年中,我担任单位开发部的一名软件工程师,主要从事着java项目的开发工作,这一年来我低调努力工作着,不求闪亮显眼和光芒四射,只为平静和淡定;这一年中所做的成绩如下:

一、财政局项目,本人独立负责开发会计处的三个子系统:

1、会计人员信用查询系统。

2、代理记账机构信用查询系统。

3、会计人员网上报备系统。

以上三个子系统上线后,方便了社会各界查验会计人员的真实信息、方便了查询合法的代理记账机构信息,以及方便了各单位对会计人员的报备。

二、餐饮行业项目,在团队开发项目中直接参与了豪享来餐饮有限单位总部的信息综合管理平台项目,主要负责的系统有:

1、房屋租赁合同管理系统。

2、短信收发管理系统。

3、会员管理系统。

4、基础信息管理系统和人事管理系统的部分功能模块。

系统应用后,豪享来在管理全国各门店房屋租赁合同上,一定程度上提高了管理效率,并且及时有效提供了相应预警信息;短信收发系统方便了总部及时传递各项信息;会员系统更好的管理全国各门店的会员信息;人事系统在管理中减少工作量等。

三、_行业项目,我参与了中国银行厦门分行,企业转账管理系统中的部分模块开发。本系统方便了企业快速实现大量和复杂的转账工作。

四、国土资源与房产管理局项目,正在负责和开发的是住房货币化补贴网上申报审核系统。本项目采用了新技术,使界面更加大方美观,很大程度上改善人机交互平台的效果。

总结不足:驻豪享来总部做项目时,由于团队内部某些原因,加之外面的其他因素,一定程度上影响了工作效率、影响开发进度和影响最终软件质量;这是包括我在内项目组中的每个成员都必须检讨的地方。

通过总结一年来的工作,尽管有了一定的进步和成绩,但在一些方面还存在不足,个别工作做得还不够完善。在今后的工作中,我将努力找出工作中的不足,以便在日后的工作中加以克服。自我不断的学习吸收新技术,认真学习好规范规程及有关文件资料,并且及时的把新技术应用在实际的项目中,进一步提高项目的技术含量。

推荐软件工程学科竞赛心得体会报告七

先介绍一下我的背景:通信类院校20xx年毕业、本科、计算机专业,毕业后进入一家大型通信设备商工作,任职软件测试工程师。

一、t项目执行

20xx年7月13日入部门,此时才知道自己被分配到了测试部。部门主管把我领走后,就把我交给了导师。

入部门的头几天,主要熟悉公司的工作环境,认识部门同事,了解产品知识。由于我们是做传输设备的,所以当时学习的产品知识主要以sdh原理为主,包括sdh的帧结构、网络的保护和倒换等。

下面介绍一下我所做的项目。

项目名称:t软件

项目概况:该项目是在pc和sun工作站上开发的软件,属于cs结构。client端用java开发(开始使用jdk1.3,后来改用jdk1.4),实现跨平台;server端用c++开发,使用ace实现跨平台(windows和unix)。

人力投入:开发好像是9人,测试3人。(我来的时候是产品的第2个版本,人力投入大概如此)

我入部门几天后,t项目就进入了测试阶段。我的任务就是执行分配给我的测试用例。当时我只知道根据测试用例描述的内容,去点鼠标,如果发现程序出现错误或异常,就填写问题单。我就这样没有任何思考的按着测试用例点了3个月的鼠标 : )

现在想起当初的测试工作,实在有太多的不足,和待改进点。

1|||、 测试用例。对于一个软件的测试来讲,测试用例是至关重要的。测试用例要覆盖所有测试规格,而且测试用例要易于理解、易于执行,简单的讲就是要描述的规范。而当时我们的测试用例却是一团糟,最糟糕的是用例的质量很差,使用这些测试用例,根本无法保证产品质量。测试用例的预置条件、操作步骤、预期结果的描述也是乱糟糟的,而且用于存储测试用例的excel表格设计的很差,界面很不友好,从一定程度上降低了测试效率。

2、 产品知识。t软件虽然是在pc和工作站上运行的,但是开发t软件的目的是为产品服务的,所以我们必须具备产品知识,才能更好的对t软件进行测试。恰巧当时包括我导师在内的3个人,都不太了解产品,所以就造成我们无法判断某些测试用例是否验证通过。从而导致了与开发人员的多次争吵。

3、 软件测试的重点不明确。软件测试是软件工程中的一项重要活动,它尽可能发现程序中存在的缺陷,保证程序的质量。但软件作为一种商业品,有它的发布时限,老板说这个软件要1月份发布,你总不能测到12月份再给他发布吧。当时我们在一些小问题上与开发人员纠缠过多,而很多重点却没有得到重视,一些严重问题暴露的比较晚,导致测试时间延了又延,版本测了一个又一个,想起那些日子,只能如此描述:“累并痛苦着”。 : (

4、 测试流程的把握。7月份中旬,t项目从开发部转到测试部,进入了测试阶段,实际当时的产品质量并不能达到转测试的标准,而我们却让他们通过了转测试,结果就给我们自己带来了巨大的痛苦。而且后续的几个版本也如此,我们是测了一轮又一轮,测的我们都要绝望了。回头想一想,t软件还真的是我们测出来的,而不是开发写出来的 : )

5、 缺少针对性测试。软件也可以分很多种,不同的软件有不同的特点,自然就需要针对性的测试了,

一年级语文家长会讲稿%a(20xx-11-25 11:26:53)

譬如gui的软件与嵌入式软件的测试方法肯定有很大不同。最初我们在做t项目测试时,就缺少针对性方法。有两个教训让我们刻骨铭心:1、界面测试,t软件发布后没多久,其他组同事就发现某界面一个按钮的单词拼写错误——“rollback”被写成“roolback”;2、效率测试,软件测试到后期才发现t软件在实际环境中运行效率很低,根本无法满足达实际应用的需要。从那以后我们就准备了专门针对t软件的测试项目,包括:界面测试、效率测试、资料测试、稳定性测试等。

6、 沟通问题。自从工作开始,开发人员和测试人员的争吵从来就没有停止过。最初是什么问题都吵,很多没有意义的争吵甚至非理性的争吵,庆幸的是现在的争吵大多是有针对性的、理性的。个人觉得以前无为争吵过多的原因是:开发人员、测试人员的工作技能和职业素养都比较欠缺。吵了大半年后,人员提升了工作技能和职业素养后,吵架都吵的比较有默契了。当然最重要的是开发人员和测试人员的目标要一致:保证产品的质量,满足客户需求。

二、自动化测试

20xx年过完年后,我被主管派到一个大组去学习自动化测试技术。这个测试组是个比较大的测试组,总共有几十号人,其中有很多牛人。他们的自动化测试框架就是由几个牛人耗时1年多开发出来的。到现在,他们的自动化用例覆盖率约50%,应用率好像有70%,总之这个自动化测试框架还是满牛x的,不过就是整个框架实现太复杂了,涉及的编程脚本就用了三种 : (

下面简单介绍一下该gui自动化测试框架。

测试工具:ibm rational robot

自动化测试技术:第三代自动化测试框架,叫什么dde,具体什么意思已经记不住了 : )

测试脚本:robot中使用的是sqabasic脚本(基于basic的一种脚本),另外还使用了tcl、com组建等,并自行开发了一个抓包工具用于自动化测试。还有我们测试的产品界面是使用java开发的,如果要让robot能够正常识别界面,还需涉及到java编程。呵呵,实现上可是够复杂的 : (

学习自动化的头一个星期,我只是学习该测试组的产品知识,学习如何使用自动化测试。后面的几个星期就开始承担自动化测试的建设任务了。想想当初自己还是满辛苦的,白天上班学习产品知识,晚上回家就对着电脑看basic脚本的语法,周末还去公司无偿加班看代码。

在技术文档的选择上,我基本只看英文的,单词不懂就拿金山词霸查,实在看不懂了才会去找些中文的资料看。为什么要选择英文的呢?因为很多中国写书的人很浮躁,只想着快点把书出版了好赚钱,所以很多中文的资料质量很差。首先要贬低的就是那本谭教授的《c语言程序设计》。记得读大学时,照着谭教授的书敲程序,没多少程序能编译通过的,真是误人子弟。

当时带我学习自动化的导师姓l,他是个大忙人,有时一整天都在开会。l的师傅姓w,w是该自动化创始人之一。我呢,充其量算是徒孙一辈,呵呵。由于l太忙,而且不那么爱说话,于是乎我就只能自己对着文档看代码。

当时对我比较有用的文档就只有两篇:一篇是汇集型的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脚本期间,我还是参考微软自带的帮助文档搞定的。(搞忘球当初是否装了msdn)

本来计划是在四月底的一个星期开展该项任务,但实际上直到4月的最后两天我才有时间。记得当时,我花了一天半的时间与我的客户——也就是我的同事,共同讨论需求,并设计excel表格的格式,让其评审。最终写脚本花费了4月的最后一个下午,以及五一期间的三个下午的时间,总计4个下午的时间,完成该工具的开发。而且我五一期间的工作并没有申报加班,是无偿劳动啊 : (

另外,令我欣喜的是,从此我成了我们组的“牛人”,哈哈哈哈。。。。。。

其实工具开发完成后,还是有些问题,如:

1、 程序崩溃(不小心除了0,呵呵,加入异常处理就ok了);

2、 有1/3的功能基本没有被使用(郁闷,花那么大精力。。。我的五一啊);

3、自动生成的表格,奇丑无比(直到现在,我都没改,哈哈)。

记得当时有个做了5年以上c++的开发人员,看到我写的excel表格,居然说“诶,这东西还满神奇的嘛”。我当时的一个感觉就是,晕,这个家伙工作效率肯定不高。

excel还真是好用,功能强大啊!

四、负责m项目测试

20xx年10月份,我开始独立负责m项目的测试工作。m项目是个小项目,大体情况如下:

代码量:大约10k行

开发语言:c#

软件环境:windows ppc 20xx

硬件环境:hp的pda(具体型号忘了,反正是便宜货,大概1000块)

人力投入:开发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、 懂就是懂,不懂就别乱说。记得最早“老”员工问我一个我自己不是很懂的问题,我通常是按自己的理解方式,跟他胡吹一通。结果他再一细问,我就傻了。知道就知道,不知道就别乱说,这点很重要,尤其是在参加面试的时候,如果自己不是很动,别人一问你就会露馅。

您可能关注的文档