metersphere平台信息介绍:
项目官网: https://metersphere.io
代码仓库: https://github.com/metersphere/metersphere
在线体验环境:(注册账号免费试用)
https://www.metersphere.com/
背景:
在选用metersphere工具做自动化之前,可能之前的很多接口都是在postman上面进行调试的,尤其是一些获取token的接口之类的,如果想把这种接口请求直接以脚本的方式放在平台的前置脚本中的话,脚本没有办法直接运行,因此今天来研究下怎么将postman导出的java - okhttp的代码在平台上去运行。
为什么要研究将postman导出的脚本直接放在平台上运行呢?
因为在某些场景中,可能在接口请求的前置脚本中还需要调其他接口去获取一些数据之类的,在平台上直接手写脚本的话 ,太过麻烦,然后像postman这种工具的话,抓个包导入一下请求的信息,然后还可以生成各种语言的脚本,传参什么的都转换成对应编程语言了,比较省事一点。
接下来在postman中导出一个接口的脚本,然后直接粘贴到平台的自定义代码块中,先运行一下,看看会提示什么:
生成的java代码截图如下:
在metersphere平台中选用beanshell运行的结果:
看报错的意思大致就是找不到类,要导入包。
因此,先在平台上上传要用到的jar包先:
然后在代码中导入包,并且在最后一行加一个平台自带的log.info("xxx")方法去打印一下接口返回的结果:
调试结果如下:
虽然我们看到打印出来的返回结果是一个json字符串,但是要提取的话,还得转换成json对象方便点,因此,可以再上传一个处理json的包:fastjson
然后代码在第一行导入包:
import com.alibaba.fastjson.*;
在最后加上:
JSONObject jsonObj = JSON.parseObject(response.body().string());
String token = jsonObj.get("token").toString();
log.info("token: " + token)
完整的代码截图如下:
今天的在metersphere平台中运行postman导出的脚本就介绍到这了,看完对您有帮助的话记得点赞+关注支持一下哟~