接口测试中,经常会遇到一次发送多个http请求,然后获取响应结果中的重点字段。并将字段的值写入到某个文件中,以便查看各个请求的具体响应内容。
本文场景:从excel中读取要测试的VIN码,发送Http请求,调用接口,实现车辆VIN码定型并将定型结果处理后,写入到excel中。
具体实现步骤:
1、使用Excel4j工具包下的readExcel2List方法读取存取VIN码的excel,并将其存储到List中
2、使用httpclient工具包,创建post请求,并遍历存储VIN的List,将VIN传入到要发送的post请求中。
HttpClientUtils类:
package com.sc.vmi;
import org.apache.http.HttpEntity;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class HttpClientUtils{
// private static CookieStore cookieStore = new BasicCookieStore();
// private static CloseableHttpClient httpClient = HttpClients.custom().setDefaultCookieStore(cookieStore).build();
private static CloseableHttpClient httpClient;
private static CloseableHttpResponse httpResponse = null;
private static HttpEntity postEntity = null;
static {
PoolingHttpClientConnectionManager manager = new PoolingHttpClientConnectionManager();
manager.setMaxTotal(200); //连接池最大并发连接数
manager.setDefaul