flask + Python3 实现的的API自动化测试平台---- IAPTest接口测试平台(总结感悟篇)
前言:
在前进中去发现自己的不足,在学习中去丰富自己的能力,在放弃时想想自己最初的目的,在困难面前想想怎么踏过去。在不断成长中去磨炼自己。
正文:
时间轴
flask + Python3 实现的的API自动化测试平台---- IAPTest接口测试平台 这篇文章已经发表了两个多月了,IAPTest测试平台从最初17年6月份构想的开始,到17年7月13的正式创立代码仓库,到7月21日第一版的完结,再到7月23日的阿里云的部署。期间多次调试,多次去修改,在十多天的开发中,第一版上线了,因为有之前jiekou-python3的经验,在接口方面的开发进度快了许多,可是部署的过程中不止一次去修改其中的bug,在本地测试完毕为何在liunx的服务器上部署出现了问题,其实很简单,重要的是没有考虑到平台的兼容性,走了许多的坑,在部署后,发到脉脉,qq群里,收到了很多人反馈,接着有开始改进,出来了第二版,第三版,并且在这个过程中,对模板进行了优化,在后续的版本增加了钉钉群通知等功能,最近又增加了权限控制。经过121次的提交,经过了三个重大版本的更新,目前的测试平台已经开过走过了7个多月的时间,受到了很多好评。开源地址:https://github.com/liwanlei/FXTest
历程
从一开始的构思,设想,到现在的120多次的提交,7个多月开发,经过很多人发来的建议,有来自华为,搜狗等公司的一线工作者的建议,也有不少网友和通道人士给来的意见,以及在testerhome等论坛上吸收了很多大佬的优秀的分享。在这么多天的开发过程中,走过了不少的坑,在不断的学习中去不足了自己的不足,在不断的迭代去开发的过程中,自己收获了很多,从一开始自己在写第一版的需求文档的时候。就改动不少,自己也产生了不少的疑惑,就看了所有能够看到的框架,想到了自己所有接触到的接口测试的东西,开始来编写这个框架的第一个需求,中间删改了许多,于是乎,第一版需求在不断的打磨中产生了,如下图。
当时自己把能想到的地方,都能做了一遍,在第一版的雏形中,自己设计出来了想要的功能,推出来第一版后,在网络上收集不少的意见,自己也有了自己的一些新的想法,于是乎,接着去设计了第二版,
相对于第一版,第二版更加让平台显得灵活,也吸取了第一版的教训,并且对原有的代码进行重构,加上一些自己的想法,融合了自己的一些想法,利用自己的休息时间,不会了用百度,上google,迭代出来了2.0,在2.0时期的版本受到了很多人体验,阿里云的每天访问量都会有不少,在2.0时期,也有搜狗等大佬们给了自己的建议,在使用中,有的人给出来实践中遇到的问题,在经过几次指导后,自己技术上提升,对系统有着更加深刻的规划,开始完善3.0版本,
看到3.0的需求,慢慢的平台变得更加灵活,3.0部分需求没有完善,但是定时任务的开发,mock的开发,让现有的系统更加能够运用到工作中去,不断打磨自己的产品,在3.0后,在自己的实际工作中发现,到3.0了,权限系统还不完善,我就接着做了一个分支,思考了一周吧,找到了思路,然后去开发了第一版的 新的权限系统。系统管理员,项目管理员,成员只能看到所属的项目,让平台更加能够在真实的环境的利用。目前项目仍在长期的维护过程中。代码会进一步优化重构。
感悟
不管是之前的学习的python的初衷还是后来学习的过程中的感悟,所学与所做结合起来。 在公司内部不少的小脚本的开发,到独立开发自动化测试,再到回来成型的测试框架。从最初学习python的web框架,到web框架落地到自己的工作中,这一切都是一步一个脚印走出来的。回想开发IAPTest这段日子,充实,忙碌,纠结,无悔。这四个词来概括吧。 充实:因为从日常的测试工作后,在业余抽时间去完成这个的开发,周末大门不出二门不迈的地方,坐那里一写就是一上午,或者一下午,有时候凌晨一两点。百度,google乱翻上阵去找答案,不到四级水平的英语,去读外语,苦难重重,每天都会有收获,每一步都会有成长。回想这段日子,是那么的充实,看着自己的作品被人膜拜,心里是那么的满足。充实的过好每个周末,充实的过好每次业余时间。 忙碌:除了日常的测试,下班后的做饭等,其他时间都去来做这个事,我知道这不是最好的,但是这是努力的结果,这不是最优秀的框架,最优秀的平台。但是锻炼了我让我越发变得优秀。忙碌的时候,不能忘记自己的劳苦,忙碌的日子不可怕,可怕的是停止不前,大胆的往前走。 纠结:中途有过放弃,有过找不到解决的思路,想要停止开发,停止维护,可是冷静下来想想,我不是富二代,不是官二代,不努力怎么成就明天的美好,纠结一番后,我还是会大步往前走。无悔:忙碌充实纠结过去,平台还是出来了,大家的建议也不断到来,大家的赞赏不断到来,获得了掌声,获得了赞许,收获满满。体验到了开发,在测试的角度去尽量让平台日趋完善。
学习怎么落地?
不少网友在qq上问我,怎么将你所学的东西落地,怎么与项目结合起来。其实我一开始也找不到落脚点,后来我慢慢找到了,比如老大让我写个脚本,说监控服务器上面的接口,我说这有啥,可是当我用到了一次,在线上都没有反馈,我的脚本都能给我更好的反馈。在用户没有反馈的时候,我就已经掌握了bug,并且迅速让研发解决,我在想,这不是一次好的落地吗,需求是老大给的,脚本是我写的,落地:监控线上的几个经常出错接口,后来我进行了版本的升级,为何升级,考虑到不方便,接受邮件,公司用钉钉,人人都有钉钉,为何不升级通知到上钉钉呢,翻阅钉钉开发文档,完美的升级过去,后来我实验了一个3分钟达到多少次,再去报警,实例,再次升级过去,进行了两次的迭代,让功能更加完善,更加符合真实的需求。推动两次升级来源于我的想法,就是想简单,就是想让问题更加准确。 怎么落地,怎么让你的所学用到你的工作中,让你的所学使单一重复的测试变得简单,节省时间,减少成本,找到切入点。比如每次测试,不变的模块很多年都不去变化,那么你用自动化去测试,让自己去测改变的部分,节省了时间。 学的能用到才是道理,找到一个合适的点。 再比如压测,我也是在公司线上出现问题后,运维提出来了怎么来解决,可是我学过jmeter。但是没有实战,找到了实战的地方了,你实战不。不落地吗,肯定落地,解决实际问题。去用你的所学解决你遇到问题。用啥学啥,找到落地的点,进入落地阶段。总结落地的成果。
学python还是学java?
这个问题不少人问我,我说python入门是简单的,的确python入门是简单的,目前也比较火,但是越往后你会发现,其实不简单,因为python也是高级语言的。python用途不少,比java干练,但是python也有自己的不足,python还是java的选择根据自己的实际情况来,入门简单就用python,学会python再来学java也简单,反过来,学会java在学python更简单,python简洁,完美。让我更喜欢python,但是最近也在接触java,因为遇到了一些问题来java处理更加合适,不管学习java还是学习python,你要学下去,要坚持下去,要有信心,自己可以学好,要有恒心,坚持学习下去。 java和python都是众多语言之一,二者都可选,二者皆可抛。语言没有好坏,只有适合不适合。选择哪一门语言都有一定的道理。
最后:
学以致用,更好的落地,最大的产出,IAPTest测试平台,是我python学习后的成果,学习后更好的落地,掌握好落地的切入点,让学习的内容和工作的内容形成闭环。学习是枯燥的,但是别人拿高工资是羡慕的,不是官二代,不是富二代,只有靠努力。不要羡慕别人的高工资,因为别人努力了,付出了。学习是件美好的事,前进的道路不是一帆风顺的,但是学习的道路可以变得有滋有味,适当的奖励自己,适当的放松。
遇到问题不要慌,不要急,百度google来帮你。
学习不一定能让你变成很富有,但是学习一定能够改变你。
flask + Python3 实现的的API自动化测试平台---- IAPTest接口测试平台(总结感悟篇)的更多相关文章
- flask + Python3 实现的的API自动化测试平台---- IAPTest接口测试平台
**背景: 1.平时测试接口,总是现写代码,对测试用例的管理,以及测试报告的管理持久化做的不够, 2.工作中移动端开发和后端开发总是不能并行进行,需要一个mock的依赖来让他 ...
- flask + Python3 实现的的API自动化测试平台---- IAPTest接口测试平台,更名:FXTest 接受定制开发(java版开发完毕)
**背景: 1.平时测试接口,总是现写代码,对测试用例的管理,以及测试报告的管理持久化做的不够, 2.工作中移动端开发和后端开发总是不能并行进行,需要一个mock的依赖来让他 ...
- HTTP API 自动化测试从手工测试到平台的演变
不管是 Web 系统,还是移动 APP,前后端逻辑的分离设计已经是常态化,相互之间通过 API 调用进行数据交互.在基于 API 约定的开发模式下,如何加速请求 / 响应的 API 测试,让研发人员及 ...
- Cucumber+Rest Assured快速搭建api自动化测试平台
转载:http://www.jianshu.com/p/6249f9a9e9c4 什么是Cucumber?什么是BDD?这里不细讲,不懂的直接查看官方:https://cucumber.io/ 什么是 ...
- <API自动化测试>Centos-Newman
一.介绍: 在测试和开发中,有一款API测试工具一直占据着武林盟主的地位,那就是声名远播的Google公司的Postman. Postman原先是Chrome浏览器的一个插件,后面发展成了一个应用程序 ...
- Python Flask高级编程之RESTFul API前后端分离精讲 (网盘免费分享)
Python Flask高级编程之RESTFul API前后端分离精讲 (免费分享) 点击链接或搜索QQ号直接加群获取其它资料: 链接:https://pan.baidu.com/s/12eKrJK ...
- HTTP API自动化测试
重构:发现测试的价值 回到起点,测试要解决什么问题,为什么要做API自动化测试平台?做这个平台,不是为了满足老板的提倡全民自动化的口号,也不是为了浮夸的KPI,更不是宣传自动化可以解决一切问题,发现所 ...
- Java Fluent Restful API自动化测试框架
这是一个Restful API自动化测试框架,这是一个能让你写出高可读性测试代码的测试框架! 项目目标 话说目前行业内,Restful API自动化测试框架已经不是稀罕物了,各个语言都有自己的实现机制 ...
- Python3调用Hadoop的API
前言: 上一篇文章 我学习使用pandas进行简单的数据分析,但是各位...... Pandas处理.分析不了TB级别数据的大数据,于是再看看Hadoop. 另附上人心不足蛇吞象 对故事一的感悟: ...
随机推荐
- JS大小写字母转换
var a = "ABCd"; console.log(a.toLowerCase());//转换成小写 console.log(a.toUpperCase());//转换成大写
- linux中搭建solr集群出现org.apache.catalina.LifecycleException: Failed to initialize component ,解决办法
07-Jan-2018 20:19:21.489 严重 [main] org.apache.catalina.core.StandardService.initInternal Failed to i ...
- Java框架之Spring(五)
本文主要介绍Spring中, 1 Spring JDBC 2 使用注解方式管理事务的传播行为 3 采用XML 方式配置事务 4 SH 整合 5 SSH 整合 一.Spring JDBC 1) 导包 , ...
- Java框架之Spring(四)
本文主要讲述在Spring中 1 注解方式装配 2 以自动扫描把组件纳入spring容器中管理 3 面象切面编程-代理的jdk 版实现 4 使用 Cglib 生成代理 5 aop编程的一些概念 6 使 ...
- H5前端性能测试总结
测试关注指标 Http请求个数 同一个域名不同浏览器内核.不同版本浏览器,大部分并发请求数是6个: 优化方案: a.雪碧图:即CSS Sprite,也称CSS精灵,是一种CSS图像合并技术,该方法是将 ...
- 《精通Linux C编程》1.3Linux系统的常用命令-笔记
[toc] 1.3.1了解Shell Linux常用命令的运行环境就是Shell,它是一种命令解析器,在用户和操作系统之间提供了一个交互接口. 用户在命令行输入命令,然后Shell对该命令进行解析并将 ...
- 五分钟学习React(一): 什么是React
在前端的世界里,我们要处理的文件不是太多,而是太少.每天开发项目将html.css.js.图片.字体文件都像大杂烩一般加载都网页上.当应用变得越来越臃肿的时候,会发现js用了那么多全局变量,css的继 ...
- botzone Tetris2
为了证明窝最近没有颓废 (并且为了多骗点访问量 游戏链接:https://botzone.org/game/Tetris2 大概就是先写个估价,然后剪剪枝搜它4步. #include<iostr ...
- 2016广东工业大学新生杯决赛网络同步赛暨全国新生邀请赛 题解&源码
Problem A: pigofzhou的巧克力棒 Description 众所周知,pigofzhou有许多妹子.有一天,pigofzhou得到了一根巧克力棒,他想把这根巧克力棒分给他的妹子们.具体 ...
- 数位dp初探
我这种蒟蒻就一直不会写数位dp.. 于是开了个坑.. 1833: [ZJOI2010]count 数字计数 这道被KPM大爷说是入门题..嗯似乎找找规律然后减掉0的情况后乱搞就可以了..(但是还是写了 ...