标签:
本篇闲扯淡
第一次做接口测试是无意的,当时正在做性能测试,然后要先验一下功能通过否,就用lr脚本跑了一遍功能,就这样第一次没了;
第二次做接口测试时,领导说要自动化,然后我研究了selenium及windows客户端,再然后得知先做接口的(万变不离其宗嘛);
思虑良久用啥去做呢,首选抛弃了lr这绝壁不合适,简单的还行复杂的就GG了。然后祭出了我的java,先学习了段时间httpclient,就进行简单的请求编写了;
在编写过程中发现我们内部请求是要传加密字段的,然后就去请教我们开发了;
首先我们开发给了我接口开发文档,里边有各种接口的参数及类型、加密规则等等,最意外的是,开发那有一个生成加密模拟发送请求的脚本,意外收获虽要之然后潜心研究; /庆幸
经过月余潜心研究修改,不但将原脚本需要每次手动修改变为自动化获取,更是增加了get/post请求、各种json解析、数据校验、读写数据库、读写外部文件、生成日志等等,变成了一个完善的自动化项目。等我开发完成的时候,额意识到额写了一套接口测试的框架; /窃喜
初步完成的时候,针对该自动化项目额组织对其他测试人员数次培训。因其他测试人员的对项目不甚了解及java语言的贫乏,结果不理想;
这个项目难道只有我能用,难道要束之高阁了么。。。
过了数月后(我已经在用soapui进行接口自动化开发了),开发要做一个内部服务器端异常测试,明显没前台界面(前台也是模拟不了的,例模拟支付宝回调),结果我们开发找到了我,正好我在原先封装好的基础上,进行各种调用构建了新的测试类,完成了这次测试(开发经理说给我表扬,嘿嘿!他说这个我就加了吧劲干了);
又过了一周左右,我们开发经理貌似意识到我写的那个项目的重要性,然后给我要了过去,让我给他讲了讲都杂用的,他说他要整合进他们项目用来做单元测试用!/得意
此卷终
第三次接口测试,此时就是使用的soapui工具了。
一开始这个工具我是不会的,以前听过但是没研究过;之所以使用这个工具,是因为我们公司招聘了一个做自动化部署的大拿,他建议用这个工具;
一说要用这个工具,就正好解脱了当时我那个java项目的困局, 当然嘛能学个新东西也是希望的;
开始时对这个工具处于懵懂的状态,然后百度查他有哪些版本,收费不,使用的脚本语言是什么;
首先查到它有个收费版功能强大,我就去网上搜破解版---有收费就有破解--常识! 然后还查到他支持groovy/javascript语言,我选择了groovy--因为有java基础;
一开始我是没有去看soapui工具咋使用的,我学习了两个星期groovy的语法,因为我想soapui工具的功能我尽量少使用,大部分功能用soapui的方法及groovy脚本去实现,这样看起来高大上----我是一个有梦想的打野
groovy脚本的学习我是在eclipse下进行的,有方法提示学起来更简单,两周后我开始打开soapui工具进行学习(实际上使用soapui并不需要掌握多少groovy语言,现用现学即可满足);
学习soapui工具的时候,我是看了一本中文帮助文档,然后对照书本进行实际的操作,慢慢理解就好了,理解了大部分功能但是很多功能我根本没用过,因为我一开始就定下了用groovy脚本去代替大部分功能,因此很多soapui自带的功能我并不需要(仅便于我理解与学习);
在真实的写项目之初,我先写一个接口进行测试,一个通过了然后在慢慢的把需要的都加上,这样一点点的有了个项目的雏形;
因为我们的接口是要求传加密字段的,这个加密的脚本需要用groovy语言实现,我首先在eclipse里实现了这个脚本,然后封装成类,导入到soapui包里,这个以后介绍;
等项目初步完成后,又面临新的问题;我们的计划是将soapui项目部署到服务器上,在每次开发提交代码完成后,自动执行测试任务,我们只需收到邮件就行啦;
我的自动化项目要部署到jenkins上,只要在jenkins上输入执行的命令(bat/sh等),然后开始研究windows下的testrunner.bat及linux下的testrunner.sh,当然在研究过程中对soapui更加了解一些;
最后在我们自动化部署大拿的帮助下,终于将项目部署在了jenkins上并且实现了git提交代码,jenkins自动获取最新版本;
等这些都做的差不多了,觉得是时候把他们记录下来了;
下篇介绍groovy脚本
标签:
原文地址:http://www.cnblogs.com/mayibanjiah/p/4538001.html