接口测试中三种传参请求(Map、request、Integer)解析
注册企业接口传入的是一个request,查询企业接口传入的是一个integer;根据名称和国家名称模糊匹配接口传入的是一个Map;
针对三种不同的传参我怎么作接口测试呢?
1 package com.web.crm.services; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; @Service
public class test {
@Autowired
private ICustomerInterface CustomerInterface;
@Autowired
private IShippingPortcodeInterface ShippingPortcodeInterface; //test
@SuppressWarnings({ "rawtypes" })
public List<TestResult> test(){
//返回结果
List<TestResult> result = new ArrayList<TestResult>();
/**
* 功能描述:注册企业
* CustomerResponse registerCustomer(CustomerRequest<?> request)
* 接口请求带request 案例
*/
//实例化一个请求
CustomerRequest request = new CustomerRequest();
//实例化一个参数
CusCustomerEntity customerEntity = new CusCustomerEntity();
customerEntity.setCusName("微软");
//将参数写人请求
request.setEntity(customerEntity);
//实例化一个参数
CusEmployeeEntity CusEmployeeEntity = new CusEmployeeEntity();
CusEmployeeEntity.setEmpTypeId(123);
CusEmployeeEntity.setCompanyEmail("yiy11@12.com");
CusEmployeeEntity.setMobilePhone("13400065433");
//将参数写人请求
request.setEmployeeEntity(CusEmployeeEntity);
//实例化一个响应
CustomerResponse response = new CustomerResponse();
//将请求传入被测接口方法
response=CustomerInterface.registerCustomer(request);
//逻辑判断getResultCode是否10000
if (StringUtils.equals(response.getResultCode(), ReturnResult.SUCCESS.getResultCode())) {
result.add(new TestResult(AlertMessageLevel.SUCCESS, "注册企业", response.getResultCode(), response
.getResultMessage()));
} else {
result.add(new TestResult(AlertMessageLevel.ERROR, "注册企业", response.getResultCode(), response
.getResultMessage()));
} /**
* 功能描述:查询企业
* CustomerResponse getCustomerById(Integer id)
* 接口请求可以直接入参 案例
*/
//定义入参类型并赋值
Integer id=1;
//实例化一个响应
CustomerResponse response1 = new CustomerResponse();
//将定义参数传入被测接口方法
response1=CustomerInterface.getCustomerById(id);
//逻辑判断getResultCode是否10000
if (StringUtils.equals(response1.getResultCode(), ReturnResult.SUCCESS.getResultCode())) {
result.add(new TestResult(AlertMessageLevel.SUCCESS, "查询企业", response1.getResultCode(), response1
.getResultMessage()));
} else {
result.add(new TestResult(AlertMessageLevel.ERROR, "查询企业", response1.getResultCode(), response1
.getResultMessage()));
} /**
* 功能描述:根据名称和国家名称模糊匹配
* ShippingPortcodeResponse queryAllPortcodeCountry(java.util.Map<java.lang.String,java.lang.Object> paramMap)
* 接口请求带Map 案例
*/
Map<java.lang.String,java.lang.Object> wy = new HashMap<java.lang.String,java.lang.Object>();
wy.put("1", 1);
ShippingPortcodeResponse response2 = new ShippingPortcodeResponse();
response2 = ShippingPortcodeInterface.queryAllPortcodeCountry(wy);
if (StringUtils.equals(response2.getResultCode(), ReturnResult.SUCCESS.getResultCode())) {
result.add(new TestResult(AlertMessageLevel.SUCCESS, "根据名称和国家名称模糊匹配", response2.getResultCode(), response2
.getResultMessage()));
} else {
result.add(new TestResult(AlertMessageLevel.ERROR, "根据名称和国家名称模糊匹配", response2.getResultCode(), response2
.getResultMessage()));
} return result;
}}
接口测试中三种传参请求(Map、request、Integer)解析的更多相关文章
- C++学习3--编程基础(vector、string、三种传参)
知识点学习 Vector容器 vector是C++标准程序库中的一个类,其定义于头文件中,与其他STL组件一样,ventor属于STD名称空间: ventor是C++标准程序库里最基本的容器,设计之初 ...
- 浅谈C++三种传参方式
浅谈C++三种传参方式 C++给函数传参中,主要有三种方式:分别是值传递.指针传递和引用传递. 下面通过讲解和实例来说明三种方式的区别. 值传递 我们都知道,在函数定义括号中的参数是形参,是给函数内专 ...
- vector作为参数的三种传参方式
c++中常用的vector容器作为参数时,有三种传参方式,分别如下(为说明问题,用二维vector): function1(std::vector<std::vector<int> ...
- Vue-router的三种传参方式
第一种传递参数:name传参 两步完成name传参并显示在模板中: 第一在router/index.js中配置name属性, routes: [ { path: '/', name: 'HelloWo ...
- vue路由router的三种传参方式
方法三: 传参页面传递参数方式: this.$router.push({ path: 'indexTwoDetails', query: { "id": id } }) 接受参数页 ...
- vector做形参时的三种传参方式
vector在做形参的时候传参的方式和普通的变量是一样的,要么传值.要么传引用.要么传指针. 现在分别定义三个以vector为形参的函数: (1) fun1(vector <int> v) ...
- vue的三种传参方式
<template> <div> <router-link :to="{'name':'x',params:{'type':'users'}}"> ...
- c# 三种传参方式 in,out,ref
in:默认方式,传值不返回 out:不传值 但是会返回新值给予传参对象 ref:传存储地址,所以传参前必须赋值初始化,传值后的运算结果直接作用在传参上 Out和ref的效果差不多
- jquery mobile changepage的三种传参方法介绍
本来觉得changePage 那么多option,传几个参数应该没问题结果翻遍国内外网站,基本方法只有三种 1,显性传参,就是利用url这个地址把参数带上,然后到changepage后的新页面,用函数 ...
随机推荐
- 利用chardet检测网页编码
环境:Win7_x64 + python3.4.3 需要先下载chardet并进行安装,下载地址:https://pypi.python.org/packages/source/c/chardet/c ...
- 15天玩转redis —— 第八篇 你不得不会的事务玩法
我们都知道redis追求的是简单,快速,高效,在这种情况下也就拒绝了支持window平台,学sqlserver的时候,我们知道事务还算是个比较复杂的东西, 所以这吊毛要是照搬到redis中去,理所当然 ...
- 项目中的web api知识总结
最近在做公司的项目,自己负责webapi的框架的搭建与开发,最近很忙,一直没时间对工作中遇到的知识点缺少个总结,现总结一下,对自己是个提升,如果个人的小点点小总结能对博友有帮助那也是善莫大焉. (1) ...
- SharedPreferences写入和读出数据
Android中有很多方法存储数据,如SharedPreferences.SQLite数据库等.简单数据的存储适用SharedPreferences. 本文使用SharedPreferences写入和 ...
- 「Unity」与iOS、Android平台的整合:2、导出的Android-Eclipse工程
谢谢关注~由于博客园的写字有些蛋疼,已经搬迁到简书了 这是本篇文章的最新连接
- C#的库存管理之旅的别样意义
我不知道大家对C#的一些基础知识掌握得怎么样了? 但无论怎么样,都应该静心下来去慢慢品味我的总结以及“库存管理”项目需用到的一些知识和技巧.你将会得到你料想不到的收获哦. 知识梳理: 数据类型:boo ...
- .Net中的并行编程-4.实现高性能异步队列
上文<.Net中的并行编程-3.ConcurrentQueue实现与分析>分析了ConcurrentQueue的实现,本章就基于ConcurrentQueue实现一个高性能的异步队列,该队 ...
- 今天做项目时,用到了好多关于js的知识点,有的忘记了,然后晚上回来自己整理一番,明天继续整理。哈哈,分享给大家。
javascript 数据类型 typeof (直接量/变量)-------判断数据类型 简单数据类型(栈,空间小,速度快) string字符串 用引号引起来的文本 number数字 所有数字 NaN ...
- IClient for js开发之地图的加载
进行web开发之前首先需要安装IServer以及iClient for JavaScript的开发包.在这两中都具备的前提下进行第一步,如何调用IServer中发布的服务 调用iServer 中发布的 ...
- 【精心推荐】12款很好用的 jQuery 图片滚动插件
这里收集了12款很好用的 jQuery 图片滚动插件分享给大家.jQuery 作为最流行的 JavaScript 框架,使用简单灵活,同时还有许多优秀的插件可供使用.其中最令人印象深刻的应用之一就是各 ...