HttpSequenceHandleTest.java 2.06 KB
package com.ecar.apm;

import java.util.ArrayList;
import java.util.HashMap;

import com.ecar.apm.http.client.HttpClientHandler;
import com.ecar.apm.http.client.HttpSequenceHandle;
import com.ecar.apm.model.HttpRequest;
import com.ecar.apm.model.HttpRequestLog;
import com.ecar.apm.model.HttpSequence;
import com.ecar.apm.model.HttpRequest.ResultType;
import com.ecar.apm.util.PostManResolver;

public class HttpSequenceHandleTest {
	public static void main(String[] args) throws Exception{
		testDashboard();
	}

	public static void testDashboard(){
		//从postman脚本生产request对象
		ArrayList<HttpRequest> requests = PostManResolver.readFromJsonFile("classpath:dashboard.postman_collection.v1.json");
		//执行接口链
		HttpSequence sequence = new HttpSequence();
		sequence.setHttpRequest(requests);
		HttpSequenceHandle HttpSequenceHandle = new HttpSequenceHandle(sequence);
		
		HttpSequenceHandle.execute();
		
		ArrayList<HttpRequestLog> logs = HttpSequenceHandle.httpRequestLogList;
		for(HttpRequestLog log : logs){
			System.out.println(log);
		}
	}
	
	public static void testAndaily(){
		//从postman脚本生产request对象
		ArrayList<HttpRequest> requests = PostManResolver.readFromJsonFile("classpath:testCase.postman_collection1.json");
		//提取变量$$csrf
		HttpRequest request0 = requests.get(0);
		HashMap<String, String> variables = request0.getVariablesMap();
		variables.put("$$csrf", "//meta[@name='X-CSRF-TOKEN']/@content");
		request0.setResultType(ResultType.XML);
		request0.setVariablesMap(variables);
		//设置参数_csrf
		HttpRequest request1 = requests.get(1);
		HashMap<String, String> params = request1.getParametersMap();
		params.put("_csrf", "$$csrf");
		request1.setParametersMap(params);
		
		
		//执行接口链
		HttpSequence sequence = new HttpSequence();
		sequence.setHttpRequest(requests);
		HttpSequenceHandle HttpSequenceHandle = new HttpSequenceHandle(sequence);
		
		HttpSequenceHandle.execute();
		
		ArrayList<HttpRequestLog> logs = HttpSequenceHandle.httpRequestLogList;
		for(HttpRequestLog log : logs){
			System.out.println(log);
		}
	}
}