当前位置: 首页 > news >正文

记录造数据测试接口

一、前言

在java开发中经常需要造数据进行测试接口,这里记录一下常用的通过造数据测试接口的方法。

 

二、一般的接口传参方式

1、接口的方式最好是使用JSON或者map的方式,这样的好处是传参可以灵活伸缩,返回的结果也最好是JSON或者map的方式

    /*** 获取授权访问令牌accessToken* @param params* @return*/@PostMapping("token")JSONObject getAccessToken(@RequestBody Map<String, Object> params);

2、组装参数方法

	/*** 组装获取Access Token参数*/public Map<String, Object> getACTokenParam() {Map<String, Object> map = new HashMap<>();String timestamp = DateTimeUtils.getDateStr();client_secret+timestamp+client_id+username+password+grant_type+scope+client_secretString clientSecM = MD5Util.getMd5(clientSecret).toUpperCase();String passwordM = MD5Util.getMd5(password).toUpperCase();String subString = (clientSecM + timestamp + clientId + userName + passwordM + grantType + scope + clientSecM);String sign = MD5Util.getMd5(subString).toUpperCase();map.put("grant_type", grantType);map.put("client_id", clientId);map.put("timestamp", timestamp);map.put("username", userName);map.put("password", passwordM);map.put("scope", scope);map.put("sign", sign);return map;}

3.常见的造数据

随机生成4位数

    Random rand = new Random();
    int randomNum = rand.nextInt(9000) + 1000;

休眠

//休眠3秒
 Thread.sleep(3000);

获取guid

    /**
     * 获取guid
     * 
     * @return
     */
    public static String getGuid() {
        return UUID.randomUUID().toString().replaceAll("\\-", "");
    }
 

。。

	/*** 获取guid* * @return*/public static String getGuid() {return UUID.randomUUID().toString().replaceAll("\\-", "");}

三、示例

	/*** 测试用户* @throws Exception*/public void testUser() throws Exception {// 创建一个ObjectMapper对象ObjectMapper mapper = new ObjectMapper();// 创建一个Json对象ObjectNode json = mapper.createObjectNode();URL url = new URL("http://127.0.0.1/tourist-contract/register");for (int i = 0; i < 500; i++) {Random rand = new Random();int randomNum = rand.nextInt(9000) + 1000;json.put("Phone", "1308111"+randomNum);json.put("openID", "user_20000" + i);json.put("UserName", "test_" + i);json.put("unifyID", "test_" + i);json.put("userID", "test_" + i);json.put("reservedField", "reservedField");ObjectNode json1 = mapper.createObjectNode();json1.put("sender", json);json1.put("mark", "travel");log.info("注册用户上链参数json:"+json1);//休眠3秒Thread.sleep(3000);// 接口调用ltApi(json1, url, "1308111"+randomNum, "用户注册", "新增");}}

http://www.lryc.cn/news/165649.html

相关文章:

  • 数据结构基础7:二叉树【链式结构】实现和递归思想。
  • [.NET 6] IHostedService 的呼叫等等我的爱——等待Web应用准备就绪
  • 基于jeecg-boot的flowable流程自定义业务退回撤回或驳回到发起人后的再次流程提交
  • python如何学习
  • Centos7更新php7.2版本升级
  • 操作系统学习笔记---计算机系统概述
  • uniapp H5 navigateBack无法返回上一层级
  • Android性能优化之应用瘦身(APK瘦身)
  • C语言数组和指针笔试题(二)(一定要看)
  • uniapp——实现在线选座功能——技能提升
  • 领域驱动设计:微服务的各种边界
  • MySQL之数据类型
  • 词法作用域改变词法作用域
  • 关于C++的隐藏 (hidden),重载(overload),重写(override)小结。
  • 算法通关村18关 | 透析回溯的模板
  • 【论文阅读】Untargeted Backdoor Attack Against Object Detection(针对目标检测的无目标后门攻击)
  • 分库分表---理论
  • [golang 流媒体在线直播系统] 2.搭建基于golang的流媒体服务器实现拉流推流,以及Html客户端拉取hls类型的流
  • 9月12日作业
  • React框架下如何集成H.265网页流媒体视频播放器EasyPlayer.js?
  • 《向量数据库》——向量数据库的使用场景有哪些?
  • Java 中 List 集合取补集
  • 我的个人网站——宏夏Coding上线啦
  • 【机器视觉】喇叭的外圆以及金属内圆的同心度视觉检测--康耐德智能
  • STM32WB55开发(2)----修改蓝牙地址
  • 【1++的C++进阶】之C++11(二)
  • 【VS2022】调试
  • python:使用RESTful API(flask)调用python程序传递参数,实现Web端调用python程序
  • 贪心算法(Greedy Algorithm)
  • 论文阅读 - Outlier detection in social networks leveraging community structure