接口测试中三种传参请求(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后的新页面,用函数 ...
随机推荐
- 枚举 + 进制转换 --- hdu 4937 Lucky Number
Lucky Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)To ...
- PHPcms 系统简单使用
1.站点/发布点的新建 1.1 发布点的新建: 发布点是设置站点与服务器之间的链接配置. 设置 - 发布点管理 - 添加发布点 发布点名:可以与接下来的站点名称相同 ftp服务器:用于设置PHPcms ...
- 画一画javascript原型链
在javascript中,几种数据类型String,Number,Boolean,Object,Function都是函数,可称之为函数对象. 可以说拥有prototype属性的都是函数. 所有对象都拥 ...
- jquery Ajax异步请求之session
写了一个脚本,如下: $(function () { $("#btnVcode").click(function () { var receiveMobile = $(" ...
- Web API应用架构在Winform混合框架中的应用(5)--系统级别字典和公司级别字典并存的处理方式
在我这个系列中,我主要以我正在开发的云会员管理系统为例进行介绍Web API的应用,由于云会员的数据设计是支持多个商家公司,而每个公司又可以包含多个店铺的,因此一些字典型的数据需要考虑这方面的不同.如 ...
- Nancy 学习-视图引擎 继续跨平台
前面一篇,讲解Nancy的基础,以及Nancy自宿主,现在开始学习视图引擎. Nancy 目前支持两种 一个是SSVE 一个是Razor.下面我们一起学习. The Super Simple View ...
- js中的延迟执行和定时执行
在js中,延迟执行函数有两种,setTimeout和setInterval,用法如下: function testFunction(){Console.log('hovertree.com');} s ...
- Eclipse设置风格
如果觉得Eclipse的颜色太刺眼,可以修改背景与字体颜色,方法如下: (1)到http://eclipsecolorthemes.org/下载主题文件,可以选择xml文件或者epf文件: (2)Ec ...
- 关于【error C3646: 未知重写说明符】的若干种可能性
如果在程序中出现了error C3646,那么这个错误可能是由多种问题所导致的,这篇文章将对多种错误及对应解决方法进行分析. 在MSDN的官方网站中,Complier Error C3646的定义为u ...
- WebSocket 学习笔记--IE,IOS,Android等设备的兼容性问题与代码实现
一.背景 公司最近准备将一套产品放到Andriod和IOS上面去,为了统一应用的开发方式,决定用各平台APP嵌套一个HTML5浏览器来实现,其中数据通信,准备使用WebSocket的方式.于是,我开始 ...