您的位置:首页 > 编程语言

eoLinker-AMS接口管理系统 代码注入教程

2018-02-28 00:00 483 查看
摘要:最近有人来问代码注入是怎么一回事,刚好新的教程上线就赶紧转过来哈。趁着农历新年没结束,祝大家在新的一年里身体健康,工作顺利,家庭幸福,狗年吉祥!

API测试代码注入

eoLinker提供了非常强大的在线API接口测试功能,在使用之前,请先确保已经安装eoLinker自动化测试增强插件,该插件为您提供了API的在线、跨域、文件以及自动化测试的功能。

接口测试的过程中经常有些参数的值是不固定的,或者是需要先进行数据处理再行发送,比如新增环境变量、对url进行转码、对参数进行加密等。相比于一般的接口测试,这些需要对参数做事先处理的接口在测试的时候更加繁琐。

对于这种类型的接口,eoLinker提供了代码注入功能,通过通过编写JavascriptJquery代码帮助您在发送请求前后对数据进行处理。

其中代码注入提供了两种注入方式:

前置代码注入(beforeScript):通过代码改变发送的参数

后置代码注入(beforeScript):通过代码改变返回的结果

前置代码注入(beforeScript):

为了方便用户操作,eoLinker前置代码注入提供了一系列的默认变量供用户操作。

API基础信息:



url:[String]API的URL

headers:[Object]请求头部

params:[Object]请求参数(HTTPRequestBody中的参数)

query:[Object]URL中的查询字符串(?x=123&y=456...)

raw:[String]源数据

环境变量:



baseUrl:[String]前置url

headers:[Object]请求头部

extraParams:[Object]额外请求参数

globalParams:[Object]全局变量

后置代码注入(beforeScript):

API返回结果



response:[String]返回结果

案例一(前置代码注入):

有一个登录接口,需要传递三个参数:

userName(用户名):普通字符串;

userPassword(用户密码):需要使用自定义加密方法对密码进行加密(此处是aes加密)

loginTime(登录时间):当前系统时间戳,以GET参数传递。



我们根据接口需求编写好前置用例代码



发送请求之后,可以发现相应的参数部分内容已经被修改(下图红框部分):



案例二(后置代码注入):

API的返回结果采用了AES加密,我们需要使用后置注入代码将返回结果解密,便于查看:



在后置代码注入中写好对结果进行解密的DES函数:



发送请求后,成功解密



案例三(在代码注入中使用环境变量):

在该API中,请求参数userName使用了环境变量中的全局变量{{name}}:



在前置代码注入中对环境变量进行操作:



发送请求之后,可以看到相应部分的参数已经被环境变量替换:



---------------------------------------------------------------------------------------------------------

代码注入的教程就到此为止,大家有什么疑问,欢迎来用户交流群中397452167与我们交流。

再次感谢大家的支持,期待与大家在AMS上相会。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息