2014年年度工作总结--IT狂人实录
2014年也是我人生最重要的一年,她见证了我的成长与蜕变,让我从一个迷茫的旅者踏上一条柳暗花明的路。
春宇之行
从春宇短暂的9个月,却经历常人难以想想的风风雨雨,首先要感谢春宇公司给我带来了安逸宽松的工作环境与自由发挥创新的工作空间。从前端到架构,不论是业务功能还是性能安全,都可以亲力亲为的实践与学习。再就是感谢我的上级领导没有干预过太多我的工作,可以让我尽情的发挥与创新着我的Model。
9个月我涉及了公司几乎所有的项目,从刚开始启动Tradx直到参与的最后一个项目chemon自动化框架。虽然结束的有些突然而且没有防备,但大部分的工作还是形成了一定的Model。
1)风控项目白盒测试
涉及:dubbo、接口测试、maven、Eclipse
描述:白盒测试需要开发暴露接口,接口测试桩开发,指导团队开发接口实现,统计接口实现与bug跟踪情况。引入dubbo,摒弃了原有Web Service项目的wdls暴露,测试框架通过Maven pom.xml三维坐标引入jar包,调用dubbo暴露接口测试。
2)Tradx项目安全测试
涉及:Appscan、N-stalker、SQL注入、渗入测试、权限绕过
描述:一、主流的安全测试层面包括:web级、系统级、网络级 web级:web请求漏洞扫描、漏洞等级分析、针对性渗入测试(主要包括:xss注入跨平台钓鱼、sql注入、校验绕过等) 系统级:端口扫描、权限分配、架构漏洞利用等 网络级:模拟发包、ip过滤、链接数分析等 二、安全标准 、一个方法建议只实现一个功能 、异常捕获不要直接使用catch (Exception ex) ,应该把异常细分处理。 、禁止循环中创建新线程,尽量使用线程池。 、方法参数不能超过5个 、在进行数据库操作或IO操作时,必须确保资源在使用完毕后得到释放,并且必须确保释放操作在finally中进行。 xss: 、屏蔽特殊符 主要有: " ' < > | 2、敏感字符转移 绕过: 1、核心业务加k(唯一标示规范) 尤其是订单 2、通过springmvc框架控制POST请求 3、加密的登录、注册、修改密码的请求
3)Tradx项目性能测试
涉及:LoadRunner、jmeter、kylinPET、Spotlight.On.Linux、Linux监控脚本
描述:包括接口性能测试、并发性测试,数据库性能测试,页面渲染测试,48小时稳定性测试;性能瓶颈分析,性能调优(包括web容器、代码逻辑、文件大小)
4)Chemon项目自动化测试
涉及:ruby、watir、selenium、watir-webdriver
描述:基于Ruby的watir-webdriver框架MVC模式开发,前端通过Java开发实现页面化自动化用例执行与展示。业务脱离逻辑代码,提供web业务录制工具,内部逻辑封装,功能之间相互调用实现,避免冗积。测试实现了页面效验、数据库效验、Linux效验、业务效验四层效验,每层独立统一树状展示输出。
① 页面效验成功 结果描述 ② 数据库效验成功 结果描述 ③ Linux效验成功 ④ 业务效验成功 |
5)统一安装自动化部署
涉及:shell、Python、多服务项目
描述:多服务器集群统一安装部署,安装前备份上轮项目与提取涉及的配置文件;部署后将上轮配置文件替换新版本配置文件,避免因为配置问题浪费时间;实现统一安装,统一启动,统一监控。提供三种部署方案:组网信任、内网安装、LAN口串联。

自动化测试框架才刚刚开始就结束了,说实话有些遗憾,自动化是我一手带起来的,从入门到克服重重困难,到最后的完成封装,经历了太多,也收获了太多,也就是那些坚持与努力才成就了我以后对自动化框架最后的封装。
谢谢!
迈向未来
9月10号开启了新的篇章,我来到了未来网络。也许是工作性质自研关系,突然间从极度紧绷的状态松弛下来感觉真的怪怪的不适应。渐渐的开始学着过起了早九晚六的生活,加班少了压力小了,一时间感觉自己似乎已经荒废了。
从骨子里透出的那种不服输的劲告诉我要改变,如果再这样下去我的未来将毫无意义,所以改变、创新也就是我来到公司提出的俩点,也是我接下来将要一直坚持的路。
如果走群众路线首先就要学会“溶”溶于集体,顺应潮流;那么走创新路线则需要“逆”逆思维,改惯例,何以简单。
摒弃Ansible使用unifyDeploy
从被动系统到主动系统沿用了UD原有架构,根据业务需求又新增了逻辑与业务分离,完美实现逻辑与业务分离,业务实现统一shell脚本开发,由框架统一调用。并发多线程部署,不管多少台服务器,多少个服务,同时发起线程进行更新、部署、启动。提高list规则文件DIY程度,减少新增服务带来的修改代码,实现扫描list自动化安装部署。(配置、与监控属于业务范围,还需手动修改。)完善回滚机制,可根据时间段进行回滚,实现即时回滚即时使用。

polling自动化巡检
这也算是推行最顺利也是最成功的一个,耗时两周开发,通过web展示每日巡检所有服务器系统资源消耗情况及自定义业务日志统计分析,经测试使用效果显著,后推广到长沙使用。
自动化测试开放平台
投入最大耗时最长同时也是受阻最多的一个,平心而论对于这个自动化测试平台我付出了太多精力,从架构到实现再到后期页面设计,她就像我的孩子看着她一步一步的成长。用机器代替手工测试这本就是一项前卫的尝试,面对同事们种种的质疑与建议,从框架到是现实我又是改了又改。12月终于定型了,实现了页面效验、数据库效验、Linux效验、业务效验四层效验,每层独立统一树状展示输出。
开发是结束了,但让大家用起来却又是头疼的事,测试人员大部分都没有接触过代码,更有一部分对编码带有一定排斥。想用就要先学,学就要需要时间,大家都很忙,那该怎么办?14年末好像就这样争执着、辩论着、遗憾着过去了。

wachdog看门狗进程守护
UD开发用的Shell,自动化测试开放平台开发用的Ruby,开发wachdog我就在想使用什么语言呢?个人比较喜欢Ruby,语言太优美了!但我最终却是放弃了使用Ruby而是使用我相对比较薄弱的python,东西是写给大家用的,ruby在中国的份额还算小众,而python的市场却不在少数。python支持多线程,所以wachdog便使用主进程统一管理多线程守护策略,实现统一管理,却相互独立。
见证2015
2014年过去了,过去有的所有低落与成就也过去了,2015年又是一个全新的开始,今年将又是我最为重要的一年,路漫漫其修远兮,吾将上下而求索。
回首2014,见证2015。谢谢!
2014年年度工作总结--IT狂人实录的更多相关文章
- MDCC 2014移动开发人员大会參会实录
MDCC 2014移动开发人员大会參会实录 详细讲什么我就不反复了,各大媒体的编辑整理的比我的好! 我就晒晒图!后面有惊喜哦! 会场地点:早上七点多.天色有点暗,主要是阴天的原因. watermark ...
- 美国政府关于Google公司2013年度的财务报表红头文件
请管理员移至新闻版块,谢谢! 来源:http://www.sec.gov/ 财务报表下载↓ 此文仅作参考分析. 10-K 1 goog2013123110-k.htm FORM 10-K UNIT ...
- 翻译 | Qt研发副总裁分享2018年工作计划
原文作者:TuukkaTurunen,高级研发副总裁 翻译校审:Haipeng.Yulong和Ryan 引言:2018年,我们将继续完善Qt 5.9 LTS,现在我们正在为5月份发布Qt 5.11进行 ...
- 【转】物业管理与移动互联网科技|微信公众平台,物业app,物业O2O
[导语]当下,物业管理行业正在接受新科技浪潮的冲击和洗礼,业界企业纷纷探索物业服务的新发展模式.云服务.微社区.微信公众平台.app等,这些本来陌生的词汇在物业管理行业变得耳熟能详.在借助科技手段拓展 ...
- SLAM的现在与未来
http://geek.csdn.net/news/detail/202128 作者:高翔,张涛,刘毅,颜沁睿. 编者按:本文节选自图书<视觉SLAM十四讲:从理论到实践>,系统介绍了视觉 ...
- HTML——传统布局的使用
传统布局:使用table来做整体页面的布局 总结:这种方式来制作页面现在也不是很多了,感觉并不是很高效. 需要先用photoshop量出页面布局具体的尺寸位置,再将其划分为表格,对每个格子进行编辑. ...
- Raft翻译
英文原文:https://web.stanford.edu/~ouster/cgi-bin/papers/raft-atc14 In Search of an Understandable Conse ...
- ChartServices Dev图形封装
.工具类ChartServices using System; using System.Data; using System.Drawing; using DevExpress.XtraCharts ...
- 用 Freemarker 生成 word 文档(包含图片)
1. 用word写一个需要导出的word模板,然后存为xml格式. 2. 将xml中需要动态修改内容的地方,换成freemarker的标识符,例如: <w:p wsp:rsidR="0 ...
随机推荐
- 把《c++ primer》读薄(4-1 c和c++数组)
督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. c和c++的数组和指针都属于低级的复合数据类型,比如c++的数组,类似vector容器,指针类似迭代器.低级的数据类型优势是速度 ...
- ZOJ Problem Set - 1067 Color Me Less
这道题目很简单,考察的就是结构体数组的应用,直接贴代码了 #include <stdio.h> #include <math.h> typedef struct color { ...
- 1Z0-053 争议题目解析481
1Z0-053 争议题目解析481 考试科目:1Z0-053 题库版本:V13.02 题库中原题为: 481.Which statement is true about a running sessi ...
- 1Z0-053 争议题目解析577
1Z0-053 争议题目解析577 考试科目:1Z0-053 题库版本:V13.02 题库中原题为: 577.What methods are available to recover lost co ...
- virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续)
virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续) 第一次接触到 linux,不知道linux的确很强大,然后用virtualbox ...
- jQuery实现checkbox的全选和反选
$(function () { if ($(".chk_all")) { $(".chk_all").click(function () { $("i ...
- jQuery-1.9.1源码分析系列(二)jQuery选择器续1
在分析之前说一点题外话. ownerDocument和 documentElement的区别 ownerDocument是Node对象的一个属性,返回的是某个元素的根节点文档对象:即document对 ...
- jQuery-1.9.1源码分析系列(十二) 筛选操作
在前面分析的时候也分析了部分筛选操作(详见),我们接着分析,把主要的几个分析一下. jQuery.fn.find( selector ) find接受一个参数表达式selector:选择器(字符串). ...
- 10.Configure One-to-Many(配置一对多关系)【Code-First系列】
现在,我们将学习怎么配置一对多的关系. Visit Entity Relationship section to understand how EF manages one-to-one, one-t ...
- .Net语言 APP开发平台——Smobiler学习日志:实现手机上常见的ListMenuView
最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的"S ...