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效验、业务效验四层效验,每层独立统一树状展示输出。
  1. XX用例执行成功

    ①  页面效验成功

      结果描述

    ②  数据库效验成功

      结果描述

    ③  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狂人实录的更多相关文章

  1. MDCC 2014移动开发人员大会參会实录

    MDCC 2014移动开发人员大会參会实录 详细讲什么我就不反复了,各大媒体的编辑整理的比我的好! 我就晒晒图!后面有惊喜哦! 会场地点:早上七点多.天色有点暗,主要是阴天的原因. watermark ...

  2. 美国政府关于Google公司2013年度的财务报表红头文件

    请管理员移至新闻版块,谢谢! 来源:http://www.sec.gov/ 财务报表下载↓ 此文仅作参考分析. 10-K 1 goog2013123110-k.htm FORM 10-K   UNIT ...

  3. 翻译 | Qt研发副总裁分享2018年工作计划

    原文作者:TuukkaTurunen,高级研发副总裁 翻译校审:Haipeng.Yulong和Ryan 引言:2018年,我们将继续完善Qt 5.9 LTS,现在我们正在为5月份发布Qt 5.11进行 ...

  4. 【转】物业管理与移动互联网科技|微信公众平台,物业app,物业O2O

    [导语]当下,物业管理行业正在接受新科技浪潮的冲击和洗礼,业界企业纷纷探索物业服务的新发展模式.云服务.微社区.微信公众平台.app等,这些本来陌生的词汇在物业管理行业变得耳熟能详.在借助科技手段拓展 ...

  5. SLAM的现在与未来

    http://geek.csdn.net/news/detail/202128 作者:高翔,张涛,刘毅,颜沁睿. 编者按:本文节选自图书<视觉SLAM十四讲:从理论到实践>,系统介绍了视觉 ...

  6. HTML——传统布局的使用

    传统布局:使用table来做整体页面的布局 总结:这种方式来制作页面现在也不是很多了,感觉并不是很高效. 需要先用photoshop量出页面布局具体的尺寸位置,再将其划分为表格,对每个格子进行编辑. ...

  7. Raft翻译

    英文原文:https://web.stanford.edu/~ouster/cgi-bin/papers/raft-atc14 In Search of an Understandable Conse ...

  8. ChartServices Dev图形封装

    .工具类ChartServices using System; using System.Data; using System.Drawing; using DevExpress.XtraCharts ...

  9. 用 Freemarker 生成 word 文档(包含图片)

    1. 用word写一个需要导出的word模板,然后存为xml格式. 2. 将xml中需要动态修改内容的地方,换成freemarker的标识符,例如: <w:p wsp:rsidR="0 ...

随机推荐

  1. js 根据屏幕大小调用不同的css文件

    原因:屏幕大小不一样,网站看起来总觉得怪怪的,所以,针对不同大小的屏幕,写了不同的css,写完了,要解决的问题就是:怎么根据屏幕的大小来引用不同的CSS,下面就是解决方法了. 解决方法:首先,在hea ...

  2. 窥探Swift之基本数据类型

    在上一篇博客“窥探Swift编程之在Playground上尽情的玩耍”中介绍了如何使用Playground来学习Swift语言.本篇博客就使用Playground来窥探Swift语言.千里之行始于足下 ...

  3. (转)J2EE的13种核心技术

    一.JDBC(Java Database Connectivity)  JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDBC对数据 ...

  4. 分享一个 @user 前端插件

    开源地址:https://github.com/yuezhongxin/Mention.js 插件效果:类似于微博或 github 中 @user 列表效果. 这是个二次开发的插件,花了几天时间,对 ...

  5. 记录一则ORACLE MOVE操作后重建索引过程被强制中断导致的ORA-8104案例

    环境:SunOS + Oracle 11.2.0.3   对部分表进行Move操作之后,未重建对应的索引,会导致ORA-1502 索引不可用. 此时需要用下面的查询拼接出重建不可用索引的sql语句: ...

  6. (七)WebGIS中栅格、矢量图层设计之栅格、矢量图层的本质

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.何为栅格数据,何为矢量数据? 在GIS中,对于数据格式的分类,我们 ...

  7. iOS多线程技术方案

    iOS多线程技术方案 目录 一.多线程简介 1.多线程的由来 2.耗时操作的模拟试验 3.进程和线程 4.多线程的概念及原理 5.多线程的优缺点和一个Tip 6.主线程 7.技术方案 二.Pthrea ...

  8. [Web API] Web API 2 深入系列(3) 激活HttpController

    目录 HttpController 创建HttpController IAssembliesResolver IHttpControllerTypeResolver HttpControllerTyp ...

  9. Windows下程序打包发布时的小技巧

    一.背景 Windows下开发的应用程序在发布时,需要将其依赖的一些动态链接库一起打进安装包里面去.这个时候,快速确定这个程序到底依赖哪些动态链接库变得非常重要.很久以前写过一篇关于Qt程序安装包制作 ...

  10. 8.1 EntityTypeConfiguration Class in Code-First【Code First系列】

    在我们学习Fluent API之前,先来看看Fluent API中重要的类--EntityTypeConfiguration吧. EntityTypeConfiguration类是Fluent API ...