package com.milan.utils;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

public class CaseHelper {

//根据excel的map 转换为数组 第一个为 入参 map 第二个为用例说明,第三个参数为执行用例的预置条件

public static Object[] getObjArrByMap(Map caseExcelMap){

Map caseParam = new HashMap();

Map caseDesc = new HashMap();

Map casePreset =new HashMap();

CaseInfo ci = new CaseInfo();

for (String key : caseExcelMap.keySet()) {

if (key.indexOf("{$d}")== 0){

caseDesc.put(key.replace("{$d}", ""), caseExcelMap.get(key));

}

else if(key.indexOf("{$p}") == 0){

casePreset.put(key.replace("{$p}", ""), caseExcelMap.get(key));

}

else {

String strValue = caseExcelMap.get(key);

if (!strValue.equals("")){

caseParam.put(key, strValue);

}

}

}

ci.setCaseDesc(caseDesc);

ci.setCaseParam(caseParam);

ci.setCasePreset(casePreset);

return new Object[]{ci};

}

///根据excel获取的list转换为  Object[][]

public static Object[][] getObjArrByList(List> caseExcelList){

List> caseExcuteList = getExcuteList(caseExcelList);

Object[][] objArray = new Object[caseExcuteList.size()][];

for(int i = 0;i

objArray[i]=getObjArrByMap(caseExcuteList.get(i));

}

return objArray;

}

///赛选出需要执行的用例

private static List> getExcuteList(List> caseExcelList){

List> list = new ArrayList>();

for( Map m : caseExcelList){

String str = m.get("{$d}isexcute").trim().toLowerCase();

if (str.equals("y")){

list.add(m);

}

}

return list;

}

}

Logo

一站式 AI 云服务平台

更多推荐