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过滤、链接数分析等 二、安全标准 1、一个方法建议只实现一个功能 2、异常捕获不要直接使用catch (Exception ex) ,应该把异常细分处理。 3、禁止循环中创建新线程,尽量使用线程池。 4、方法参数不能超过5个 5、在进行数据库操作或IO操作时,必须确保资源在使用完毕后得到释放,并且必须确保释放操作在finally中进行。 xss: 1、屏蔽特殊符 主要有: " ‘ < > | 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。谢谢!