引子
近来公司要搞CICD,期盼把公司内部通盘API都统一同来治理,从立项、需求调研、产物调研、摆设以及履行,先后一共搞了两个多月,特此纪录下来,期盼也许帮到众人。
项目后台
公司是国内做外贸电商平台的头部企业之一,研发团队人左右,内部份为多个奇迹部,每个奇迹部内有多条产物线,每条产物线下有多个产物团队。每个产物团队哄骗不同的开垦器材,代码和API的计算没有明了的计算样板,而且各自哄骗的器材也不相同。在公司项目倏地进展的光阴,每个产物团队都在忙着开垦,因而研发治理的题目并不超过,固然此前涌现过频频对于统一研发测试器材的商议,但最后由于项目排期题目不了然之。
从往年岁首最先涌现过频频对比大的项目事变,由于迭代周期过短,测试笼罩度不敷,致使项目上线以后优待券系统有反常损失了一点钱,因而从公司高层最先推研发治理鼎新,甚么cicd、敏锐开垦、代码查看、API治理、主动化测试啥的都要搞一套。全部项目从3月份立项到5月尾正式实现,在通过6月一个月的理论以后获得不错的反应。
面对的题目(需求调研)
在通过一周左右的需求调研,把内部大部份团队的API治理需求整顿为下列8点:
1.API文档治理器材不统一,编写效率低下,不便利分享。
2.对于API的计算样板不统一,不同团队之间的API对接特别费事,有效Rest的,也有表单的和json的。
3.API文档纪录的体例不敷详细,通常罅漏字段,致使对接和测试过程中添加了很多疏通成本。
4.需求mockapi模仿后端哀求,让前端也许摆脱后端停止对接和测试。
5.测试人员同时哄骗多个器材(API文档治理、测试、用例编写),测试和疏通效率低下。
6.API变动的光阴没法准时报告关连人员,只可在钉钉上去喊人也许是迎面疏通。对于API的变动也没有详细的纪录。
7.测试人员程度条理不齐,没有法子按需编写详细的测试用例。通过足本写用例也不便利保护。
8.期盼有API的主动化测试,便利对一些繁杂的场景停止测试,好比付出的过程。
说真话那时一看到需求感觉头都大了,首先是需求很杂,不但有API文档治理的需求,再有测试和主动化测试,还要能便利上手。一最先是期盼特地拉个团队做这事,但接到需求以后内部商议了一下感觉成本过高,众人也没做过,况且履行周期对比短(惟独两个月),本身搞是不行能的(预算了一下假如要搞一个能用的也许得5私人搞个起码半年),转而从现有的市道产物中找寻管理计划。
产物调研第一阶段
产物调研的思绪很简明:
1.有免费也许开源的最佳,其次才是付费的
2.能起码餍足80%的需求
3.也许离线独占化摆设
一最先咱们料到众人通常用得对比多的Postman、Swagger和Jmeter,来由首先是他们都是免费的,其次是对这三个产物对比熟识,上手对比快。然而把通过一轮调研以后照样淘汰掉,道理也很简明:
1.不够充沛强的API文档治理,Postman的文档太简明,Jmeter缺乏这块功用,Swagger需求在代码里写证明,然而咱们以前的文档都是写在word内部的,哄骗习惯不相同。
2.团队合做功用太弱,对于人左右的研发团队,以上三个产物都像是单机的产物,反面咱们试用了Postman的付费版,感觉照样不契合国内用户的哄骗习惯,更像是一个测试器材,而非治理平台。
3.没法餍足倏地编写测试用例和主动化测试的需求。
4.没法做到API变动报告和版本治理。
产物调研第二阶段
因而咱们就接着找现在市道上的API治理平台,获得下列的清单:
1.EOLINKERAPIStudio
2.RAP
3.NEI
4.APIZZA
5.Doclever
最值得一提的是EOLINKERAPIStudio,APIStudio首要做API的研发治理和主动化测试,从产物的功用上看是能餍足咱们的绝大部份的需求。然而要吐槽的是EOLINKER这个名字切实不好发音,一最先打电话给他们客服压根不懂得何如叫,反面才懂得从来是EasyOpenLinker的缩写。
RAP是阿里妈妈团队做的一个开源产物,做了有很多年,然而现在的功用还在是太弱了,和淘宝的诤友探听了一下从来他们内部也不必(但他们内部有一个aone系统做得很强),以是就抛却了。
NEI是网易的API治理平台,测试功用太弱而且不帮助独占化摆设,抛却。
APIZZA是一个创业团队做的,界面直接照搬Postman,然而功用比拟Postman弱很多,走光理当是简明上手快,定位小微型团队,也不帮助独占化摆设。相同要吐槽的是名字,认为是卖批萨的。
Doclever是一个私人开源项目,功用比APIZZA强一点,然而做家曾经中止保护了,略感惋惜。
以是一轮对比下来发掘原来没有啥可选的,国内的API治理产物的头部效应太显然,APIStudio不管是功用完竣度照样产物大伙老练度都比别的几个要好很多。咱们先是试用了EOLINKER的线上免费版,感觉功用曾经很强了,因而在项目停止到第三周的光阴干系了他们的客服请求独占云版本试用,请求以后有一个半月的试用期。
摆设和履行
这理当是全部项目最难的部份,难点在于给全公司的产物团队遍及一个新的产物而且融入到劳动过程内部。首先咱们找到了一个项目进度不算重要的团队,让培训讲师长途培训了一次,而后咱们检察了团队一周的功夫,而且发表了调盘诘卷去理解团队的哄骗处境。通过一周的哄骗以后,研发团队的成员感觉还不错,上手新产物并不需求许久,同时也给出了哄骗过程中的题目,咱们再把题目反应给那儿停止答疑。
当第一个团队感觉用得还不错的光阴,咱们接续在第二个团队内部停止试推,而且在第三周让两个产物团队坐在一同商议产物的哄骗方法,好比拟订权力治理的方法,文档开垦样板,报告样板等等。归纳获得一个对比通用的计划以后,咱们再接续推行到其余产物团队。
在基础计划跑通以后,咱们最先试验通过Jenkins把EOLINKER和其余系统干系起来产生一个过程,好比现代码push以后也许主动跑测试用例,而且把汇报发送给测试团队,测试团队再去校验一下用例的处境。
全部培训和履行过程花了差未几一个半月,以是全部促成过程比料想中的要成功很多。反面咱们由接续购买了他们的API监控效劳,让API开垦测试和监控也许变为一个完好过程,现在履行下来感觉照样不错的。
跋文
这篇文章首要纪录咱们搭建API治理和主动化测试平台过程中的一些思绪和过程,做为开垦人员也许完好介入到这全部过程中原来也许学到很多,不管是项宗旨治理、团队好处关联的调和,照样新产物培训和推行等等。后续咱们再接续整顿其余系统的搭建过程和哄骗技能,期盼也许多换取。
本文为51Testing经受权转载,转载文章所包括的文字泉源于做家。如因体例或版权等题目,请干系51Testing停止简略。
保举浏览点击浏览?对于测试劳动效率低的一些思量和改革办法
点击浏览?干货
饿了么全链路压测的摸索与理论
点击浏览?15天的功用测试效劳日志
点击浏览?软件测试之黑盒测试:打入手电找寻bug
点击浏览?为甚么人为智能不会让软件测试消散?
戳“浏览原文”一同来充电吧!爱我请给我悦目!预览时标签不行点收录于合集#个转载请注明:http://www.0431gb208.com/sjslczl/1084.html