改造log4j日志结构
This commit is contained in:
parent
040947352d
commit
26ded4b631
9
pom.xml
9
pom.xml
|
@ -235,14 +235,7 @@
|
|||
<artifactId>commons-net</artifactId>
|
||||
<version>3.6</version>
|
||||
</dependency>
|
||||
<!-- <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId>
|
||||
<version>1.2.17</version> </dependency> -->
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.26</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-log4j</artifactId>
|
||||
<version>1.3.8.RELEASE</version>
|
||||
|
|
|
@ -11,6 +11,7 @@ import luckyclient.caserun.exinterface.BatchTestCaseExecution;
|
|||
import luckyclient.caserun.exinterface.TestControl;
|
||||
import luckyclient.caserun.exwebdriver.ex.WebBatchExecute;
|
||||
import luckyclient.publicclass.AppiumConfig;
|
||||
import luckyclient.publicclass.LogUtil;
|
||||
import luckyclient.serverapi.api.GetServerAPI;
|
||||
import luckyclient.serverapi.entity.TaskExecute;
|
||||
import luckyclient.serverapi.entity.TaskScheduling;
|
||||
|
@ -58,9 +59,10 @@ public class BatchCaseExecute extends TestControl {
|
|||
}
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("启动批量运行用例主函数出现异常,请检查!",e);
|
||||
} finally{
|
||||
System.exit(0);
|
||||
}
|
||||
System.exit(0);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@ import luckyclient.caserun.exinterface.TestCaseExecution;
|
|||
import luckyclient.caserun.exinterface.TestControl;
|
||||
import luckyclient.caserun.exwebdriver.ex.WebOneCaseExecute;
|
||||
import luckyclient.publicclass.AppiumConfig;
|
||||
import luckyclient.publicclass.LogUtil;
|
||||
import luckyclient.serverapi.api.GetServerAPI;
|
||||
import luckyclient.serverapi.entity.TaskExecute;
|
||||
import luckyclient.serverapi.entity.TaskScheduling;
|
||||
|
@ -30,32 +31,37 @@ public class OneCaseExecute extends TestControl {
|
|||
|
||||
public static void main(String[] args) throws Exception {
|
||||
// TODO Auto-generated method stub
|
||||
PropertyConfigurator.configure(System.getProperty("user.dir")+ File.separator +"log4j.conf");
|
||||
String taskId = args[0];
|
||||
String caseId = args[1];
|
||||
int version = Integer.parseInt(args[2]);
|
||||
TaskExecute task = GetServerAPI.cgetTaskbyid(Integer.valueOf(taskId));
|
||||
TaskScheduling taskScheduling = GetServerAPI.cGetTaskSchedulingByTaskId(Integer.valueOf(taskId));
|
||||
if (taskScheduling.getTaskType() == 0) {
|
||||
// ½Ó¿Ú²âÊÔ
|
||||
TestCaseExecution.oneCaseExecuteForTask(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId), String.valueOf(task.getTaskId()));
|
||||
try{
|
||||
PropertyConfigurator.configure(System.getProperty("user.dir")+ File.separator +"log4j.conf");
|
||||
String taskId = args[0];
|
||||
String caseId = args[1];
|
||||
int version = Integer.parseInt(args[2]);
|
||||
TaskExecute task = GetServerAPI.cgetTaskbyid(Integer.valueOf(taskId));
|
||||
TaskScheduling taskScheduling = GetServerAPI.cGetTaskSchedulingByTaskId(Integer.valueOf(taskId));
|
||||
if (taskScheduling.getTaskType() == 0) {
|
||||
// 接口测试
|
||||
TestCaseExecution.oneCaseExecuteForTask(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId), String.valueOf(task.getTaskId()));
|
||||
|
||||
} else if (taskScheduling.getTaskType() == 1) {
|
||||
WebOneCaseExecute.oneCaseExecuteForTast(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId), version,
|
||||
String.valueOf(task.getTaskId()));
|
||||
} else if (taskScheduling.getTaskType() == 1) {
|
||||
WebOneCaseExecute.oneCaseExecuteForTast(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId), version,
|
||||
String.valueOf(task.getTaskId()));
|
||||
|
||||
} else if (taskScheduling.getTaskType() == 2) {
|
||||
Properties properties = AppiumConfig.getConfiguration();
|
||||
} else if (taskScheduling.getTaskType() == 2) {
|
||||
Properties properties = AppiumConfig.getConfiguration();
|
||||
|
||||
if ("Android".equals(properties.getProperty("platformName"))) {
|
||||
AndroidOneCaseExecute.oneCaseExecuteForTast(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId),
|
||||
version, String.valueOf(task.getTaskId()));
|
||||
} else if ("IOS".equals(properties.getProperty("platformName"))) {
|
||||
IosOneCaseExecute.oneCaseExecuteForTast(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId), version,
|
||||
String.valueOf(task.getTaskId()));
|
||||
}
|
||||
if ("Android".equals(properties.getProperty("platformName"))) {
|
||||
AndroidOneCaseExecute.oneCaseExecuteForTast(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId),
|
||||
version, String.valueOf(task.getTaskId()));
|
||||
} else if ("IOS".equals(properties.getProperty("platformName"))) {
|
||||
IosOneCaseExecute.oneCaseExecuteForTast(taskScheduling.getProject().getProjectName(), Integer.valueOf(caseId), version,
|
||||
String.valueOf(task.getTaskId()));
|
||||
}
|
||||
|
||||
}
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("启动单个用例运行主函数出现异常,请检查!",e);
|
||||
} finally{
|
||||
System.exit(0);
|
||||
}
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ import org.apache.log4j.PropertyConfigurator;
|
|||
import luckyclient.caserun.exappium.AppTestControl;
|
||||
import luckyclient.caserun.exinterface.TestControl;
|
||||
import luckyclient.caserun.exwebdriver.WebTestControl;
|
||||
import luckyclient.publicclass.LogUtil;
|
||||
import luckyclient.serverapi.api.GetServerAPI;
|
||||
import luckyclient.serverapi.entity.TaskExecute;
|
||||
import luckyclient.serverapi.entity.TaskScheduling;
|
||||
|
@ -39,10 +40,11 @@ public class RunAutomationTest extends TestControl {
|
|||
} else if (taskScheduling.getTaskType() == 2) {
|
||||
AppTestControl.taskExecutionPlan(task);
|
||||
}
|
||||
System.exit(0);
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("启动测试任务运行主函数出现异常,请检查!",e);
|
||||
} finally{
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ import org.apache.log4j.PropertyConfigurator;
|
|||
|
||||
import luckyclient.caserun.exinterface.TestControl;
|
||||
import luckyclient.caserun.exinterface.WebTestCaseDebug;
|
||||
import luckyclient.publicclass.LogUtil;
|
||||
|
||||
/**
|
||||
* =================================================================
|
||||
|
@ -22,10 +23,16 @@ public class WebDebugExecute extends TestControl{
|
|||
|
||||
public static void main(String[] args) throws Exception {
|
||||
// TODO Auto-generated method stub
|
||||
PropertyConfigurator.configure(System.getProperty("user.dir") + File.separator + "log4j.conf");
|
||||
String caseIdStr = args[0];
|
||||
String userIdStr = args[1];
|
||||
WebTestCaseDebug.oneCaseDebug(caseIdStr, userIdStr);
|
||||
System.exit(0);
|
||||
try {
|
||||
PropertyConfigurator.configure(System.getProperty("user.dir") + File.separator + "log4j.conf");
|
||||
String caseIdStr = args[0];
|
||||
String userIdStr = args[1];
|
||||
WebTestCaseDebug.oneCaseDebug(caseIdStr, userIdStr);
|
||||
} catch (Exception e) {
|
||||
// TODO: handle exception
|
||||
LogUtil.APP.error("启动用例调试主函数出现异常,请检查!",e);
|
||||
} finally{
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -41,11 +41,10 @@ public class BaseWebDrive {
|
|||
FileUtils.copyFile(scrFile, new File(pngpath));
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error("截图操作失败,抛出异常请查看日志...", e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
scrFile.deleteOnExit();
|
||||
LogUtil.APP
|
||||
.info("已对当前界面进行截图操作,可通过用例执行界面的日志明细查看,也可以前往客户端上查看...【" + pngpath + "】");
|
||||
.info("已对当前界面进行截图操作,可通过用例执行界面的日志明细查看,也可以前往客户端上查看...【{}】",pngpath);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
|
|
@ -34,13 +34,12 @@ public class CaseLocalDebug{
|
|||
try {
|
||||
ProjectCase testcase = GetServerAPI.cgetCaseBysign(testCaseExternalId);
|
||||
List<ProjectCaseParams> pcplist=GetServerAPI.cgetParamsByProjectid(String.valueOf(testcase.getProjectId()));
|
||||
LogUtil.APP.info("开始执行用例:【"+testCaseExternalId+"】......");
|
||||
LogUtil.APP.info("开始执行用例:【{}】......",testCaseExternalId);
|
||||
List<ProjectCaseSteps> steps=GetServerAPI.getStepsbycaseid(testcase.getCaseId());
|
||||
WebCaseExecution.caseExcution(testcase,steps, "888888",wd,caselog,pcplist);
|
||||
LogUtil.APP.info("当前用例:【"+testcase.getCaseSign()+"】执行完成......进入下一条");
|
||||
LogUtil.APP.info("当前用例:【{}】执行完成......进入下一条",testcase.getCaseSign());
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.info("用户执行过程中抛出异常!", e);
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("用户执行过程中抛出异常!", e);
|
||||
}
|
||||
//关闭浏览器
|
||||
wd.quit();
|
||||
|
@ -56,17 +55,12 @@ public class CaseLocalDebug{
|
|||
System.out.println("当前调试用例总共:"+addtestcase.size());
|
||||
for(String testCaseExternalId:addtestcase) {
|
||||
try{
|
||||
LogUtil.APP.info("开始调用方法,项目名:"+projectname+",用例编号:" + testCaseExternalId);
|
||||
LogUtil.APP.info("开始调用方法,项目名:{},用例编号:{}",projectname,testCaseExternalId);
|
||||
oneCasedebug(wd,testCaseExternalId);
|
||||
}catch(Exception e){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -52,21 +52,21 @@ public class EncapsulateOperation {
|
|||
case "selectbyvisibletext":
|
||||
select.selectByVisibleText(operationValue);
|
||||
result = "下拉框对象通过VisibleText属性选择...【VisibleText属性值:" + operationValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("下拉框对象通过VisibleText属性选择...【VisibleText属性值:{}】",operationValue);
|
||||
break;
|
||||
case "selectbyvalue":
|
||||
select.selectByValue(operationValue);
|
||||
result = "下拉框对象通过Value属性选择...【Value属性值:" + operationValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("下拉框对象通过Value属性选择...【Value属性值:{}】",operationValue);
|
||||
break;
|
||||
case "selectbyindex":
|
||||
select.selectByIndex(Integer.valueOf(operationValue));
|
||||
result = "下拉框对象通过Index属性选择...【Index属性值:" + operationValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("下拉框对象通过Index属性选择...【Index属性值:{}】",operationValue);
|
||||
break;
|
||||
case "isselect":
|
||||
result = "获取到的值是【" + we.isSelected() + "】";
|
||||
LogUtil.APP.info("判断对象是否已经被选择...【结果值:" + we.isSelected() + "】");
|
||||
LogUtil.APP.info("判断对象是否已经被选择...【结果值:{}】",we.isSelected());
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -80,23 +80,23 @@ public class EncapsulateOperation {
|
|||
switch (operation) {
|
||||
case "gettext":
|
||||
result = "获取到的值是【" + we.getText() + "】";
|
||||
LogUtil.APP.info("getText获取对象text属性...【text属性值:" + result + "】");
|
||||
LogUtil.APP.info("getText获取对象text属性...【text属性值:{}】",result);
|
||||
break; // 获取输入框内容
|
||||
case "gettagname":
|
||||
result = "获取到的值是【" + we.getTagName() + "】";
|
||||
LogUtil.APP.info("getTagName获取对象tagname属性...【tagname属性值:" + result + "】");
|
||||
LogUtil.APP.info("getTagName获取对象tagname属性...【tagname属性值:{}】",result);
|
||||
break;
|
||||
case "getattribute":
|
||||
result = "获取到的值是【" + we.getAttribute(value) + "】";
|
||||
LogUtil.APP.info("getAttribute获取对象【" + value + "】属性...【" + value + "属性值:" + result + "】");
|
||||
LogUtil.APP.info("getAttribute获取对象【{}】属性...【{}属性值:{}】",value,value,result);
|
||||
break;
|
||||
case "getcssvalue":
|
||||
result = "获取到的值是【" + we.getCssValue(value) + "】";
|
||||
LogUtil.APP.info("getCssValue获取对象【" + value + "】属性...【" + value + "属性值:" + result + "】");
|
||||
LogUtil.APP.info("getCssValue获取对象【{}】属性...【{}属性值:{}】",value,value,result);
|
||||
break;
|
||||
case "getcaptcha":
|
||||
result = "获取到的值是【" + Ocr.getCAPTCHA(wd, we) + "】";
|
||||
LogUtil.APP.info("getcaptcha获取验证码...【验证码值:" + result + "】");
|
||||
LogUtil.APP.info("getcaptcha获取验证码...【验证码值:{}】",result);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -113,41 +113,41 @@ public class EncapsulateOperation {
|
|||
case "mouselkclick":
|
||||
action.click(we).perform();
|
||||
result = "mouselkclick鼠标左键点击对象...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mouselkclick鼠标左键点击对象...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break;
|
||||
case "mouserkclick":
|
||||
action.contextClick(we).perform();
|
||||
result = "mouserkclick鼠标右键点击对象...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mouserkclick鼠标右键点击对象...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break;
|
||||
case "mousedclick":
|
||||
action.doubleClick(we).perform();
|
||||
result = "mousedclick鼠标双击对象...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mousedclick鼠标双击对象...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break;
|
||||
case "mouseclickhold":
|
||||
action.clickAndHold(we).perform();
|
||||
result = "mouseclickhold鼠标点击对象后不释放...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mouseclickhold鼠标点击对象后不释放...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break;
|
||||
case "mousedrag":
|
||||
int[] location = getLocationFromParam(operationValue, ",");
|
||||
// String[] temp = operationValue.split(",", -1);
|
||||
action.dragAndDropBy(we, location[0], location[1]).perform();
|
||||
result = "mousedrag鼠标移动至对象相对坐标...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "; 相对坐标(x,y):" + location[0] + "," + location[1] + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mousedrag鼠标移动至对象相对坐标...【对象定位属性:{}; 定位属性值:{}; 相对坐标(x,y):{},{}】",property,propertyValue,location[0],location[1]);
|
||||
break;
|
||||
case "mouseto":
|
||||
int[] location1 = getLocationFromParam(operationValue, ",");
|
||||
// String[] temp1 = operationValue.split(",", -1);
|
||||
action.moveToElement(we, location1[0], location1[1]).perform();
|
||||
result = "mouseto鼠标移动至对象相对坐标...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "; 相对坐标(x,y):" + location1[0] + "," + location1[1] + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mouseto鼠标移动至对象相对坐标...【对象定位属性:{}; 定位属性值:{}; 相对坐标(x,y):{},{}】",property,propertyValue,location1[0],location1[1]);
|
||||
break;
|
||||
case "mouserelease":
|
||||
action.release(we).perform();
|
||||
result = "mouserelease鼠标释放...";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mouserelease鼠标释放...");
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -186,7 +186,7 @@ public class EncapsulateOperation {
|
|||
// String[] temp1 = operationValue.split(",", -1);
|
||||
action.moveByOffset(location[0], location[1]).perform();
|
||||
result = "mouseto鼠标移动至对象相对坐标...坐标x:" + location[0] + " 坐标y:" + location[1];
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("mouseto鼠标移动至对象相对坐标...坐标x:{} 坐标y:{}",location[0],location[1]);
|
||||
break;
|
||||
case "mouserelease":
|
||||
action.release().perform();
|
||||
|
@ -237,30 +237,30 @@ public class EncapsulateOperation {
|
|||
case "click":
|
||||
we.click();
|
||||
result = "click点击对象...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("click点击对象...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break;
|
||||
case "sendkeys":
|
||||
we.sendKeys(operationValue);
|
||||
result = "sendKeys对象输入...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "; 操作值:" + operationValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("sendKeys对象输入...【对象定位属性:{}; 定位属性值:{}; 操作值:{}】",property,propertyValue,operationValue);
|
||||
break;
|
||||
case "clear":
|
||||
we.clear();
|
||||
result = "clear清空输入框...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("clear清空输入框...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break; // 清空输入框
|
||||
case "gotoframe":
|
||||
wd.switchTo().frame(we);
|
||||
result = "gotoframe切换Frame...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("gotoframe切换Frame...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break;
|
||||
case "isenabled":
|
||||
result = "获取到的值是【" + we.isEnabled() + "】";
|
||||
LogUtil.APP.info(result);
|
||||
result = "获取到的值是【"+we.isEnabled()+"】";
|
||||
LogUtil.APP.info("获取到的值是【{}】",we.isEnabled());
|
||||
break;
|
||||
case "isdisplayed":
|
||||
result = "获取到的值是【" + we.isDisplayed() + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("获取到的值是【{}】",we.isDisplayed());
|
||||
break;
|
||||
case "exjsob":
|
||||
JavascriptExecutor jse = (JavascriptExecutor) wd;
|
||||
|
@ -269,23 +269,23 @@ public class EncapsulateOperation {
|
|||
String tmp = obj.toString();
|
||||
result = (100 < tmp.length()) ? tmp.substring(0, 100) + "..." : tmp;
|
||||
result = "获取到的值是【" + result + "】";
|
||||
LogUtil.APP.info("执行JS...【" + operationValue + "】,返回的结果为:" + result);
|
||||
LogUtil.APP.info("执行JS...【{}】,返回的结果为:{}",operationValue,result);
|
||||
} else {
|
||||
result = "执行JS...【" + operationValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("执行JS...【{}】",operationValue);
|
||||
}
|
||||
break;
|
||||
case "scrollto":
|
||||
Point location = we.getLocation();
|
||||
((JavascriptExecutor) wd).executeScript("window.scrollTo(" + location.getX() + ", " + location.getY() + ")");
|
||||
result = "滚动到目标对象...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "; 对象坐标(x,y):" + location.getX() + "," + location.getY() + "】";;
|
||||
LogUtil.APP.info(result);
|
||||
result = "滚动到目标对象...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "; 对象坐标(x,y):" + location.getX() + "," + location.getY() + "】";
|
||||
LogUtil.APP.info("滚动到目标对象...【对象定位属性:{}; 定位属性值:{}; 对象坐标(x,y):{},{}】",property,propertyValue,location.getX(),location.getY());
|
||||
break;
|
||||
case "scrollintoview":
|
||||
// 此方法可以用执行js命令来代替
|
||||
((JavascriptExecutor) wd).executeScript("arguments[0].scrollIntoView(" + operationValue + ")", we);
|
||||
result = "将目标对象滚动到可视...【对象定位属性:" + property + "; 定位属性值:" + propertyValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("将目标对象滚动到可视...【对象定位属性:{}; 定位属性值:{}】",property,propertyValue);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -309,7 +309,7 @@ public class EncapsulateOperation {
|
|||
break;
|
||||
case "alertgettext":
|
||||
result = "获取到的值是【" + alert.getText() + "】";
|
||||
LogUtil.APP.info("弹出框对象通过getText获取对象text属性...【Text属性值:" + alert.getText() + "】");
|
||||
LogUtil.APP.info("弹出框对象通过getText获取对象text属性...【Text属性值:{}】",alert.getText());
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
@ -324,14 +324,14 @@ public class EncapsulateOperation {
|
|||
case "open":
|
||||
wd.get(operationValue);
|
||||
result = "Open页面...【" + operationValue + "】";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("Open页面...【{}】",operationValue);
|
||||
break;
|
||||
case "addcookie":
|
||||
List<Cookie> cookies = buildCookie(operationValue);
|
||||
if (null != cookies && cookies.size() > 0) {
|
||||
for (Cookie cookie : cookies) {
|
||||
wd.manage().addCookie(cookie);
|
||||
LogUtil.APP.info("添加Cookie:【"+cookie+"】成功!");
|
||||
LogUtil.APP.info("添加Cookie:【{}】成功!",cookie);
|
||||
}
|
||||
}
|
||||
result = "添加cookie...【" + operationValue + "】";
|
||||
|
@ -343,10 +343,10 @@ public class EncapsulateOperation {
|
|||
String tmp = obj.toString();
|
||||
result = (100 < tmp.length()) ? tmp.substring(0, 100) + "..." : tmp;
|
||||
result = "获取到的值是【" + result + "】";
|
||||
LogUtil.APP.info("执行JS...【" + operationValue + "】,返回的结果为:" + result);
|
||||
LogUtil.APP.info("执行JS...【{}】,返回的结果为:{}",operationValue,result);
|
||||
} else {
|
||||
result = "执行JS...【" + operationValue + "】";
|
||||
LogUtil.APP.info(result+",执行JS返回null或没有返回");
|
||||
LogUtil.APP.info("{},执行JS返回null或没有返回",result);
|
||||
}
|
||||
break;
|
||||
case "gotodefaultcontent":
|
||||
|
@ -361,7 +361,7 @@ public class EncapsulateOperation {
|
|||
break;
|
||||
case "gettitle":
|
||||
result = "获取到的值是【" + wd.getTitle() + "】";
|
||||
LogUtil.APP.info("获取页面Title...【" + wd.getTitle() + "】");
|
||||
LogUtil.APP.info("获取页面Title...【{}】",wd.getTitle());
|
||||
break;
|
||||
case "getwindowhandle":
|
||||
result = getTargetWindowHandle(wd, operationValue);
|
||||
|
@ -380,11 +380,10 @@ public class EncapsulateOperation {
|
|||
// 设置元素出现最大时长30秒
|
||||
wd.manage().timeouts().implicitlyWait(Integer.valueOf(operationValue), TimeUnit.SECONDS);
|
||||
result = "当前任务操作等待【" + operationValue + "】秒...";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("当前任务操作等待【{}】秒...",operationValue);
|
||||
break;
|
||||
} catch (NumberFormatException e) {
|
||||
LogUtil.APP.error("等待时间转换出错!");
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("等待时间转换出现异常!",e);
|
||||
result = "【等待时间转换出错,请检查参数】";
|
||||
break;
|
||||
}
|
||||
|
@ -419,16 +418,15 @@ public class EncapsulateOperation {
|
|||
//String expire = jsonObject.getString("expire");
|
||||
if (!StringUtils.isBlank(name) && !StringUtils.isBlank(val)) {
|
||||
Cookie cookie = new Cookie(name, val, domain, path, null);
|
||||
LogUtil.APP.info("解析Cookie成功:【"+cookie+"】");
|
||||
LogUtil.APP.info("解析Cookie成功:【{}】",cookie);
|
||||
result.add(cookie);
|
||||
}else{
|
||||
LogUtil.APP.warn("cookie:" + jsonObject + "错误,name或是val为空!");
|
||||
LogUtil.APP.warn("cookie:{} 错误,name或是val为空!",jsonObject);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("格式化Cookie对象出错,请检查您的格式是否正确!【"+operationValue+"】");
|
||||
LogUtil.APP.error("格式化Cookie对象出错,请检查您的格式是否正确!【{}】",operationValue,e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
@ -466,7 +464,7 @@ public class EncapsulateOperation {
|
|||
result = "获取窗口句柄值失败,WebDriver为空";
|
||||
}
|
||||
if (result.contains("获取窗口句柄值失败")) LogUtil.APP.warn(result);
|
||||
else LogUtil.APP.info("获取窗口句柄值成功,目标窗口句柄值为【" + result + "】");
|
||||
else LogUtil.APP.info("获取窗口句柄值成功,目标窗口句柄值为【{}】",result);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -501,6 +499,7 @@ public class EncapsulateOperation {
|
|||
else result = "获取到的值是【" + windowHandles.get(index - 1) + "】";
|
||||
}
|
||||
} catch (IndexOutOfBoundsException e) {
|
||||
LogUtil.APP.error("获取窗口句柄值出现异常,需要获取窗口句柄值的下标【{}】越界",index,e);
|
||||
result = "获取窗口句柄值失败,需要获取窗口句柄值的下标【" + index + "】越界";
|
||||
}
|
||||
return result;
|
||||
|
@ -558,23 +557,18 @@ public class EncapsulateOperation {
|
|||
try {
|
||||
if (null == Wait(driver).until(windowToBeAvailableAndSwitchToIt(target))) {
|
||||
result = "切换窗口句柄失败,未找到句柄值为【" + target + "】的对象";
|
||||
LogUtil.APP.warn(result);
|
||||
LogUtil.APP.warn("切换窗口句柄失败,未找到句柄值为【{}】的对象",target);
|
||||
} else {
|
||||
result = "切换窗口句柄成功,找到句柄值为【" + target + "】的对象";
|
||||
LogUtil.APP.info(result);
|
||||
LogUtil.APP.info("切换窗口句柄成功,找到句柄值为【{}】的对象",target);
|
||||
}
|
||||
return result;
|
||||
} catch (TimeoutException e) {
|
||||
result = "切换窗口句柄失败,等待超时,未找到句柄值为【" + target + "】的对象";
|
||||
LogUtil.APP.error(result);
|
||||
LogUtil.APP.error("切换窗口句柄失败,等待超时,未找到句柄值为【{}】的对象",target,e);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ public class WebDriverInitialization{
|
|||
File directory = new File("");
|
||||
String drivenpath=directory.getCanonicalPath()+File.separator+"BrowserDriven"+File.separator;
|
||||
WebDriver webDriver = null;
|
||||
LogUtil.APP.info("准备初始化WebDriver对象...检查到当前操作系统是:"+os);
|
||||
LogUtil.APP.info("准备初始化WebDriver对象...检查到当前操作系统是:{}",os);
|
||||
if(drivertype==0){
|
||||
if(os.startsWith("win")){
|
||||
System.setProperty("webdriver.ie.driver",drivenpath+"IEDriverServer.exe");
|
||||
|
@ -90,7 +90,7 @@ public class WebDriverInitialization{
|
|||
LogUtil.APP.warn("当前操作系统无法进行Edge浏览器的Web UI测试,请选择火狐或是谷歌浏览器!");
|
||||
}
|
||||
}else{
|
||||
LogUtil.APP.warn("浏览器类型标识:"+drivertype+",获取到的浏览器类型标识未定义,默认IE浏览器进行执行....");
|
||||
LogUtil.APP.warn("浏览器类型标识:{},获取到的浏览器类型标识未定义,默认IE浏览器进行执行....",drivertype);
|
||||
System.setProperty("webdriver.ie.driver",drivenpath+"IEDriverServer.exe");
|
||||
webDriver = new InternetExplorerDriver();
|
||||
}
|
||||
|
|
|
@ -4,7 +4,6 @@ import java.io.IOException;
|
|||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.log4j.PropertyConfigurator;
|
||||
import org.openqa.selenium.WebDriver;
|
||||
import org.openqa.selenium.WebDriverException;
|
||||
|
||||
|
@ -52,7 +51,7 @@ public class WebTestControl {
|
|||
wd = WebDriverInitialization.setWebDriverForLocal();
|
||||
} catch (IOException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("初始化WebDriver出现异常!",e);
|
||||
}
|
||||
LogOperation caselog = new LogOperation();
|
||||
List<ProjectCase> testCases = GetServerAPI.getCasesbyplanname(planname);
|
||||
|
@ -60,7 +59,7 @@ public class WebTestControl {
|
|||
if (testCases.size() != 0) {
|
||||
pcplist = GetServerAPI.cgetParamsByProjectid(String.valueOf(testCases.get(0).getProjectId()));
|
||||
}
|
||||
LogUtil.APP.info("当前计划中读取到用例共 " + testCases.size() + " 个");
|
||||
LogUtil.APP.info("当前计划中读取到用例共【{}】个",testCases.size());
|
||||
int i = 0;
|
||||
for (ProjectCase testcase : testCases) {
|
||||
List<ProjectCaseSteps> steps = GetServerAPI.getStepsbycaseid(testcase.getCaseId());
|
||||
|
@ -68,15 +67,14 @@ public class WebTestControl {
|
|||
continue;
|
||||
}
|
||||
i++;
|
||||
LogUtil.APP.info("开始执行第" + i + "条用例:【" + testcase.getCaseSign() + "】......");
|
||||
LogUtil.APP.info("开始执行第{}条用例:【{}】......",i,testcase.getCaseSign());
|
||||
try {
|
||||
WebCaseExecution.caseExcution(testcase, steps, taskid, wd, caselog, pcplist);
|
||||
} catch (InterruptedException e) {
|
||||
// TODO Auto-generated catch block
|
||||
LogUtil.APP.error("用户执行过程中抛出异常!", e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
LogUtil.APP.info("当前用例:【" + testcase.getCaseSign() + "】执行完成......进入下一条");
|
||||
LogUtil.APP.info("当前用例:【{}】执行完成......进入下一条",testcase.getCaseSign());
|
||||
}
|
||||
LogUtil.APP.info("当前项目测试计划中的用例已经全部执行完成...");
|
||||
// 关闭浏览器
|
||||
|
@ -106,15 +104,13 @@ public class WebTestControl {
|
|||
wd = WebDriverInitialization.setWebDriverForTask(drivertype);
|
||||
} catch (WebDriverException e1) {
|
||||
LogUtil.APP.error("初始化WebDriver出错 WebDriverException!", e1);
|
||||
e1.printStackTrace();
|
||||
} catch (IOException e2) {
|
||||
LogUtil.APP.error("初始化WebDriver出错 IOException!", e2);
|
||||
e2.printStackTrace();
|
||||
}
|
||||
LogOperation caselog = new LogOperation();
|
||||
|
||||
List<ProjectCase> cases = GetServerAPI.getCasesbyplanId(taskScheduling.getPlanId());
|
||||
LogUtil.APP.info("当前计划中读取到用例共 " + cases.size() + " 个");
|
||||
LogUtil.APP.info("当前计划中读取到用例共【{}】个",cases.size());
|
||||
LogOperation.updateTaskExecuteStatus(taskid, cases.size());
|
||||
|
||||
for (ProjectCase testcase : cases) {
|
||||
|
@ -122,7 +118,7 @@ public class WebTestControl {
|
|||
if (steps.size() == 0) {
|
||||
continue;
|
||||
}
|
||||
LogUtil.APP.info("开始执行用例:【" + testcase.getCaseSign() + "】......");
|
||||
LogUtil.APP.info("开始执行用例:【{}】......",testcase.getCaseSign());
|
||||
try {
|
||||
// 插入开始执行的用例
|
||||
caselog.insertTaskCaseExecute(taskid, taskScheduling.getProjectId(),testcase.getCaseId(),testcase.getCaseSign(), testcase.getCaseName(), 4);
|
||||
|
@ -130,14 +126,13 @@ public class WebTestControl {
|
|||
} catch (InterruptedException e) {
|
||||
// TODO Auto-generated catch block
|
||||
LogUtil.APP.error("用户执行过程中抛出异常!", e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
LogUtil.APP.info("当前用例:【" + testcase.getCaseSign() + "】执行完成......进入下一条");
|
||||
LogUtil.APP.info("当前用例:【{}】执行完成......进入下一条",testcase.getCaseSign());
|
||||
}
|
||||
tastcount = LogOperation.updateTaskExecuteData(taskid, cases.size());
|
||||
|
||||
String testtime = LogOperation.getTestTime(taskid);
|
||||
LogUtil.APP.info("当前项目【" + projectname + "】测试计划中的用例已经全部执行完成...");
|
||||
LogUtil.APP.info("当前项目【{}】测试计划中的用例已经全部执行完成...",projectname);
|
||||
MailSendInitialization.sendMailInitialization(HtmlMail.htmlSubjectFormat(jobname),
|
||||
HtmlMail.htmlContentFormat(tastcount, taskid, buildstatus, restartstatus, testtime, jobname),
|
||||
taskid, taskScheduling, tastcount);
|
||||
|
@ -155,15 +150,4 @@ public class WebTestControl {
|
|||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
try {
|
||||
PropertyConfigurator.configure(System.getProperty("user.dir") + "\\log4j.conf");
|
||||
// ManualExecutionPlan("automation test");
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ public class WebBatchExecute{
|
|||
wd = WebDriverInitialization.setWebDriverForTask(drivertype);
|
||||
} catch (MalformedURLException e1) {
|
||||
// TODO Auto-generated catch block
|
||||
e1.printStackTrace();
|
||||
LogUtil.APP.error("初始化WebDriver出现异常!", e1);
|
||||
}
|
||||
LogOperation caselog = new LogOperation();
|
||||
TaskExecute task=GetServerAPI.cgetTaskbyid(Integer.valueOf(taskid));
|
||||
|
@ -58,7 +58,6 @@ public class WebBatchExecute{
|
|||
} catch (InterruptedException e) {
|
||||
// TODO Auto-generated catch block
|
||||
LogUtil.APP.error("用户执行过程中抛出异常!", e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}else{ //批量执行用例
|
||||
|
@ -73,7 +72,6 @@ public class WebBatchExecute{
|
|||
} catch (InterruptedException e) {
|
||||
// TODO Auto-generated catch block
|
||||
LogUtil.APP.error("用户执行过程中抛出异常!", e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -82,10 +82,10 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
if (0 != stepresult) {
|
||||
setcaseresult = stepresult;
|
||||
if (testcase.getFailcontinue() == 0) {
|
||||
LogUtil.APP.warn("用例【"+testcase.getCaseSign()+"】第【"+step.getStepSerialNumber()+"】步骤执行失败,中断本条用例后续步骤执行,进入到下一条用例执行中......");
|
||||
LogUtil.APP.warn("用例【{}】第【{}】步骤执行失败,中断本条用例后续步骤执行,进入到下一条用例执行中......",testcase.getCaseSign(),step.getStepSerialNumber());
|
||||
break;
|
||||
} else {
|
||||
LogUtil.APP.warn("用例【"+testcase.getCaseSign()+"】第【"+step.getStepSerialNumber()+"】步骤执行失败,继续本条用例后续步骤执行,进入下个步骤执行中......");
|
||||
LogUtil.APP.warn("用例【{}】第【{}】步骤执行失败,继续本条用例后续步骤执行,进入下个步骤执行中......",testcase.getCaseSign(),step.getStepSerialNumber());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -93,10 +93,10 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
variable.clear();
|
||||
caselog.updateTaskCaseExecuteStatus(taskid, testcase.getCaseId(), setcaseresult);
|
||||
if (setcaseresult == 0) {
|
||||
LogUtil.APP.info("用例【" + testcase.getCaseSign() + "】全部步骤执行结果成功...");
|
||||
LogUtil.APP.info("用例【{}】全部步骤执行结果成功...",testcase.getCaseSign());
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "用例全部步骤执行结果成功", "info", "ending", "");
|
||||
} else {
|
||||
LogUtil.APP.warn("用例【" + testcase.getCaseSign() + "】步骤执行过程中失败或是锁定...请查看具体原因!" + casenote);
|
||||
LogUtil.APP.warn("用例【{}】步骤执行过程中失败或是锁定...请查看具体原因:{}",testcase.getCaseSign(),casenote);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "用例执行过程中失败或是锁定" + casenote, "error", "ending", "");
|
||||
}
|
||||
}
|
||||
|
@ -123,8 +123,7 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
LogUtil.APP.info("二次解析用例过程完成,等待进行对象操作......");
|
||||
caselog.insertTaskCaseLog(taskid, caseId, "对象操作:" + operation + "; 操作值:" + operationValue, "info", String.valueOf(stepno), "");
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("二次解析用例过程抛出异常!---" + e.getMessage());
|
||||
LogUtil.APP.error("二次解析用例过程抛出异常!",e);
|
||||
return "步骤执行失败:解析用例失败!";
|
||||
}
|
||||
|
||||
|
@ -173,7 +172,7 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
result = "步骤执行失败:元素操作过程失败!";
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("元素定位过程或是操作过程失败或异常!" + e.getMessage());
|
||||
LogUtil.APP.error("元素定位过程或是操作过程失败或异常!",e);
|
||||
return "步骤执行失败:元素定位过程或是操作过程失败或异常!" + e.getMessage();
|
||||
}
|
||||
|
||||
|
@ -218,7 +217,7 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
return we;
|
||||
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("当前对象定位失败:" + e.getMessage());
|
||||
LogUtil.APP.error("当前对象定位失败!",e);
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@ -233,18 +232,18 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
if (null != result && !result.contains("步骤执行失败:")) {
|
||||
// 有预期结果
|
||||
if (null != expect && !expect.isEmpty()) {
|
||||
LogUtil.APP.info("期望结果为【" + expect + "】");
|
||||
LogUtil.APP.info("期望结果为【{}】",expect);
|
||||
// 赋值传参模式
|
||||
if (expect.length() > ASSIGNMENT_SIGN.length() && expect.startsWith(ASSIGNMENT_SIGN)) {
|
||||
variable.put(expect.substring(ASSIGNMENT_SIGN.length()), result);
|
||||
LogUtil.APP.info("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,将测试结果【" + result + "】赋值给变量【" + expect.substring(ASSIGNMENT_SIGN.length()) + "】");
|
||||
LogUtil.APP.info("用例:{} 第{}步,将测试结果【{}】赋值给变量【{}】",testcase.getCaseSign(),step.getStepSerialNumber(),result,expect.substring(ASSIGNMENT_SIGN.length()));
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "将测试结果【" + result + "】赋值给变量【" + expect.substring(ASSIGNMENT_SIGN.length()) + "】", "info", String.valueOf(step.getStepSerialNumber()), "");
|
||||
}
|
||||
// 赋值全局变量
|
||||
else if (expect.length() > ASSIGNMENT_GLOBALSIGN.length() && expect.startsWith(ASSIGNMENT_GLOBALSIGN)) {
|
||||
variable.put(expect.substring(ASSIGNMENT_GLOBALSIGN.length()), result);
|
||||
ParamsManageForSteps.GLOBAL_VARIABLE.put(expect.substring(ASSIGNMENT_GLOBALSIGN.length()), result);
|
||||
LogUtil.APP.info("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,将测试结果【" + result + "】赋值给全局变量【" + expect.substring(ASSIGNMENT_GLOBALSIGN.length()) + "】");
|
||||
LogUtil.APP.info("用例:{} 第{}步,将测试结果【{}】赋值给全局变量【{}】",testcase.getCaseSign(),step.getStepSerialNumber(),result,expect.substring(ASSIGNMENT_GLOBALSIGN.length()));
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "将测试结果【" + result + "】赋值给全局变量【" + expect.substring(ASSIGNMENT_GLOBALSIGN.length()) + "】", "info", String.valueOf(step.getStepSerialNumber()), "");
|
||||
}
|
||||
// WebUI检查模式
|
||||
|
@ -254,13 +253,13 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
|
||||
WebElement we = isElementExist(driver, checkproperty, checkPropertyValue);
|
||||
if (null != we) {
|
||||
LogUtil.APP.info("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,在当前页面中找到预期结果中对象。当前步骤执行成功!");
|
||||
LogUtil.APP.info("用例:{} 第{}步,在当前页面中找到预期结果中对象。当前步骤执行成功!",testcase.getCaseSign(),step.getStepSerialNumber());
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "在当前页面中找到预期结果中对象。当前步骤执行成功!", "info", String.valueOf(step.getStepSerialNumber()), "");
|
||||
} else {
|
||||
casenote = "第" + step.getStepSerialNumber() + "步,没有在当前页面中找到预期结果中对象。执行失败!";
|
||||
setresult = 1;
|
||||
BaseWebDrive.webScreenShot(driver, imagname);
|
||||
LogUtil.APP.warn("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,没有在当前页面中找到预期结果中对象。当前步骤执行失败!");
|
||||
LogUtil.APP.warn("用例:{} 第{}步,没有在当前页面中找到预期结果中对象。当前步骤执行失败!",testcase.getCaseSign(),step.getStepSerialNumber());
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "在当前页面中没有找到预期结果中对象。当前步骤执行失败!" + "checkproperty【" + checkproperty + "】 checkproperty_value【" + checkPropertyValue + "】", "error", String.valueOf(step.getStepSerialNumber()), imagname);
|
||||
}
|
||||
}
|
||||
|
@ -269,13 +268,13 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
// 模糊匹配预期结果模式
|
||||
if (expect.length() > FUZZY_MATCHING_SIGN.length() && expect.startsWith(FUZZY_MATCHING_SIGN)) {
|
||||
if (result.contains(expect.substring(FUZZY_MATCHING_SIGN.length()))) {
|
||||
LogUtil.APP.info("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,模糊匹配预期结果成功!执行结果:" + result);
|
||||
LogUtil.APP.info("用例:{} 第{}步,模糊匹配预期结果成功!执行结果:",testcase.getCaseSign(),step.getStepSerialNumber(),result);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "模糊匹配预期结果成功!执行结果:" + result, "info", String.valueOf(step.getStepSerialNumber()), "");
|
||||
} else {
|
||||
casenote = "第" + step.getStepSerialNumber() + "步,模糊匹配预期结果失败!";
|
||||
setresult = 1;
|
||||
BaseWebDrive.webScreenShot(driver, imagname);
|
||||
LogUtil.APP.warn("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,模糊匹配预期结果失败!预期结果:" + expect.substring(FUZZY_MATCHING_SIGN.length()) + ",测试结果:" + result);
|
||||
LogUtil.APP.warn("用例:{} 第{}步,模糊匹配预期结果失败!预期结果:{},测试结果:{}",testcase.getCaseSign(),step.getStepSerialNumber(),expect.substring(FUZZY_MATCHING_SIGN.length()),result);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "模糊匹配预期结果失败!预期结果:" + expect.substring(FUZZY_MATCHING_SIGN.length()) + ",测试结果:" + result, "error", String.valueOf(step.getStepSerialNumber()), imagname);
|
||||
}
|
||||
}
|
||||
|
@ -284,26 +283,26 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
Pattern pattern = Pattern.compile(expect.substring(REGULAR_MATCHING_SIGN.length()));
|
||||
Matcher matcher = pattern.matcher(result);
|
||||
if (matcher.find()) {
|
||||
LogUtil.APP.info("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,正则匹配预期结果成功!执行结果:" + result);
|
||||
LogUtil.APP.info("用例:{} 第{}步,正则匹配预期结果成功!执行结果:{}",testcase.getCaseSign(),step.getStepSerialNumber(),result);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "正则匹配预期结果成功!", "info", String.valueOf(step.getStepSerialNumber()), "");
|
||||
} else {
|
||||
casenote = "第" + step.getStepSerialNumber() + "步,正则匹配预期结果失败!";
|
||||
setresult = 1;
|
||||
BaseWebDrive.webScreenShot(driver, imagname);
|
||||
LogUtil.APP.warn("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,正则匹配预期结果失败!预期结果:" + expect.substring(REGULAR_MATCHING_SIGN.length()) + ",测试结果:" + result);
|
||||
LogUtil.APP.warn("用例:{} 第{}步,正则匹配预期结果失败!预期结果:{},测试结果:{}",testcase.getCaseSign(),step.getStepSerialNumber(),expect.substring(REGULAR_MATCHING_SIGN.length()),result);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "正则匹配预期结果失败!预期结果:" + expect.substring(REGULAR_MATCHING_SIGN.length()) + ",测试结果:" + result, "error", String.valueOf(step.getStepSerialNumber()), imagname);
|
||||
}
|
||||
}
|
||||
// 精确匹配预期结果模式
|
||||
else {
|
||||
if (expect.equals(result)) {
|
||||
LogUtil.APP.info("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,精确匹配预期结果成功!执行结果:" + result);
|
||||
LogUtil.APP.info("用例:{} 第{}步,精确匹配预期结果成功!执行结果:{}",testcase.getCaseSign(),step.getStepSerialNumber(),result);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "精确匹配预期结果成功!", "info", String.valueOf(step.getStepSerialNumber()), "");
|
||||
} else {
|
||||
casenote = "第" + step.getStepSerialNumber() + "步,精确匹配预期结果失败!";
|
||||
setresult = 1;
|
||||
BaseWebDrive.webScreenShot(driver, imagname);
|
||||
LogUtil.APP.warn("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,精确匹配预期结果失败!预期结果是:【"+expect+"】 执行结果:【"+ result+"】");
|
||||
LogUtil.APP.warn("用例:{} 第{}步,精确匹配预期结果失败!预期结果是:【{}】 执行结果:【{}】",testcase.getCaseSign(),step.getStepSerialNumber(),expect,result);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "精确匹配预期结果失败!预期结果是:【"+expect+"】 执行结果:【"+ result+"】", "error", String.valueOf(step.getStepSerialNumber()), imagname);
|
||||
}
|
||||
}
|
||||
|
@ -313,7 +312,7 @@ public class WebCaseExecution extends TestCaseExecution {
|
|||
casenote = (null != result) ? result : "";
|
||||
setresult = 2;
|
||||
BaseWebDrive.webScreenShot(driver, imagname);
|
||||
LogUtil.APP.warn("用例:" + testcase.getCaseSign() + " 第" + step.getStepSerialNumber() + "步,执行结果:" + casenote);
|
||||
LogUtil.APP.warn("用例:{} 第{}步,执行结果:{}",testcase.getCaseSign(),step.getStepSerialNumber(),casenote);
|
||||
caselog.insertTaskCaseLog(taskid, testcase.getCaseId(), "当前步骤在执行过程中解析|定位元素|操作对象失败!" + casenote, "error", String.valueOf(step.getStepSerialNumber()), imagname);
|
||||
}
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ public class WebDriverAnalyticCase {
|
|||
params.put("property", property.trim().toLowerCase());
|
||||
//set属性值
|
||||
params.put("property_value", propertyValue.trim());
|
||||
LogUtil.APP.info("对象属性解析结果:property:"+property.trim()+"; property_value:"+propertyValue.trim());
|
||||
LogUtil.APP.info("对象属性解析结果:property:{}; property_value:{}",property.trim(),propertyValue.trim());
|
||||
}
|
||||
//set操作方法
|
||||
params.put("operation", step.getStepOperation().toLowerCase());
|
||||
|
@ -54,7 +54,7 @@ public class WebDriverAnalyticCase {
|
|||
//set属性值
|
||||
params.put("operation_value", step.getStepParameters());
|
||||
}
|
||||
LogUtil.APP.info("对象操作解析结果:operation:"+step.getStepOperation().toLowerCase()+"; operation_value:"+step.getStepParameters());
|
||||
LogUtil.APP.info("对象操作解析结果:operation:{}; operation_value:{}",step.getStepOperation().toLowerCase(),step.getStepParameters());
|
||||
//获取预期结果字符串
|
||||
resultstr = step.getExpectedResult();
|
||||
|
||||
|
@ -71,15 +71,15 @@ public class WebDriverAnalyticCase {
|
|||
params.put("checkproperty_value", expectedResults.substring(expectedResults.indexOf("=")+1, expectedResults.lastIndexOf(")")));
|
||||
}
|
||||
params.put("ExpectedResults", expectedResults);
|
||||
LogUtil.APP.info("预期结果解析:ExpectedResults:"+expectedResults);
|
||||
LogUtil.APP.info("预期结果解析:ExpectedResults:{}",expectedResults);
|
||||
}
|
||||
|
||||
LogUtil.APP.info("用例编号:"+projectcase.getCaseSign()+" 步骤编号:"+step.getStepSerialNumber()+" 解析自动化用例步骤脚本完成!");
|
||||
LogUtil.APP.info("用例编号:{} 第{}步,解析自动化用例步骤脚本完成!",projectcase.getCaseSign(),step.getStepSerialNumber());
|
||||
if(null!=caselog){
|
||||
caselog.insertTaskCaseLog(taskid, projectcase.getCaseId(),"步骤编号:"+step.getStepSerialNumber()+" 解析自动化用例步骤脚本完成!","info",String.valueOf(step.getStepSerialNumber()),"");
|
||||
}
|
||||
}catch(Exception e) {
|
||||
LogUtil.APP.error("用例编号:"+projectcase.getCaseSign()+" 步骤编号:"+step.getStepSerialNumber()+" 解析自动化用例步骤脚本出错!",e);
|
||||
LogUtil.APP.error("用例编号:{} 第{}步,解析自动化用例步骤脚本出现异常!",projectcase.getCaseSign(),step.getStepSerialNumber(),e);
|
||||
if(null!=caselog){
|
||||
caselog.insertTaskCaseLog(taskid, projectcase.getCaseId(),"步骤编号:"+step.getStepSerialNumber()+" 解析自动化用例步骤脚本出错!","error",String.valueOf(step.getStepSerialNumber()),"");
|
||||
}
|
||||
|
|
|
@ -38,7 +38,6 @@ public class WebOneCaseExecute{
|
|||
wd = WebDriverInitialization.setWebDriverForTask(drivertype);
|
||||
} catch (IOException e1) {
|
||||
LogUtil.APP.error("初始化WebDriver出错!", e1);
|
||||
e1.printStackTrace();
|
||||
}
|
||||
LogOperation caselog = new LogOperation();
|
||||
ProjectCase testcase = GetServerAPI.cGetCaseByCaseId(caseId);
|
||||
|
@ -46,14 +45,13 @@ public class WebOneCaseExecute{
|
|||
LogOperation.deleteTaskCaseLog(testcase.getCaseId(), taskid);
|
||||
|
||||
List<ProjectCaseParams> pcplist=GetServerAPI.cgetParamsByProjectid(String.valueOf(testcase.getProjectId()));
|
||||
LogUtil.APP.info("开始执行用例:【"+testcase.getCaseSign()+"】......");
|
||||
LogUtil.APP.info("开始执行用例:【{}】......",testcase.getCaseSign());
|
||||
try {
|
||||
List<ProjectCaseSteps> steps=GetServerAPI.getStepsbycaseid(testcase.getCaseId());
|
||||
WebCaseExecution.caseExcution(testcase, steps, taskid,wd,caselog,pcplist);
|
||||
LogUtil.APP.info("当前用例:【"+testcase.getCaseSign()+"】执行完成......进入下一条");
|
||||
LogUtil.APP.info("当前用例:【{}】执行完成......进入下一条",testcase.getCaseSign());
|
||||
} catch (InterruptedException e) {
|
||||
LogUtil.APP.error("用户执行过程中抛出异常!", e);
|
||||
e.printStackTrace();
|
||||
}
|
||||
LogOperation.updateTaskExecuteData(taskid, 0);
|
||||
//关闭浏览器
|
||||
|
|
|
@ -51,7 +51,7 @@ public class ChangString {
|
|||
|
||||
// 如果存在传参,进行处理
|
||||
if (varcount > 0) {
|
||||
LogUtil.APP.info("在" + changname + "【" + str + "】中找到" + varcount + "个可替换参数");
|
||||
LogUtil.APP.info("在{}【{}】中找到{}个可替换参数",changname,str,varcount);
|
||||
int changcount = 0;
|
||||
|
||||
// 准备将HASHMAP换成LINKMAP,对KEY进行排序,解决要先替换最长KEY的问题
|
||||
|
@ -82,15 +82,14 @@ public class ChangString {
|
|||
// "\\\\'"));
|
||||
int viewcount = counter(str, "@" + entry.getKey());
|
||||
str = str.replace("@" + entry.getKey(), entry.getValue());
|
||||
LogUtil.APP
|
||||
.info("将" + changname + "引用变量【@" + entry.getKey() + "】替换成值【" + entry.getValue() + "】");
|
||||
LogUtil.APP.info("将{}引用变量【@{}】替换成值【{}】",changname,entry.getKey(),entry.getValue());
|
||||
str = str.replace("////CHANG////", "@@" + entry.getKey());
|
||||
changcount = changcount + viewcount;
|
||||
}
|
||||
}
|
||||
|
||||
if (varcount != changcount) {
|
||||
LogUtil.APP.warn(changname + "有引用变量未在参数列中找到,请检查!处理结果【" + str + "】");
|
||||
LogUtil.APP.warn(changname + "有引用变量未在参数列中找到,请检查!处理结果【{}】",str);
|
||||
}
|
||||
}
|
||||
str = str.replace("@@", "@");
|
||||
|
@ -98,7 +97,7 @@ public class ChangString {
|
|||
str=ParamsManageForSteps.paramsManage(str);
|
||||
return str;
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("替换参数过程中出现异常,请检查!",e);
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
@ -220,10 +219,10 @@ public class ChangString {
|
|||
if(entry.getValue() instanceof List){
|
||||
if(key.equals(entry.getKey())){
|
||||
if(keyindex==COUNTER){
|
||||
LogUtil.APP.info("对象原始String值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象原始String值:【{}】",entry.getValue());
|
||||
JSONArray jsonarr = JSONArray.parseArray(value);
|
||||
entry.setValue(jsonarr);
|
||||
LogUtil.APP.info("对象替换后String值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象替换后String值:【{}】",entry.getValue());
|
||||
BCHANG=true;
|
||||
}
|
||||
COUNTER++;
|
||||
|
@ -238,10 +237,10 @@ public class ChangString {
|
|||
}catch(JSONException jsone){
|
||||
if(key.equals(entry.getKey())){
|
||||
if(keyindex==COUNTER){
|
||||
LogUtil.APP.info("对象原始List值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象原始List值:【{}】",entry.getValue());
|
||||
JSONArray jsonarr = JSONArray.parseArray(value);
|
||||
entry.setValue(jsonarr);
|
||||
LogUtil.APP.info("对象替换后List值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象替换后List值:【{}】",entry.getValue());
|
||||
BCHANG=true;
|
||||
}
|
||||
COUNTER++;
|
||||
|
@ -255,9 +254,9 @@ public class ChangString {
|
|||
if(entry.getValue() instanceof String){
|
||||
if(key.equals(entry.getKey())){
|
||||
if(keyindex==COUNTER){
|
||||
LogUtil.APP.info("对象原始String值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象原始String值:【{}】",entry.getValue());
|
||||
entry.setValue(value);
|
||||
LogUtil.APP.info("对象替换后String值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象替换后String值:【{}】",entry.getValue());
|
||||
BCHANG=true;
|
||||
}
|
||||
COUNTER++;
|
||||
|
@ -267,9 +266,9 @@ public class ChangString {
|
|||
if(entry.getValue() instanceof Integer){
|
||||
if(key.equals(entry.getKey())){
|
||||
if(keyindex==COUNTER){
|
||||
LogUtil.APP.info("对象原始Integer值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象原始Integer值:【{}】",entry.getValue());
|
||||
entry.setValue(Integer.valueOf(value));
|
||||
LogUtil.APP.info("对象替换后Integer值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象替换后Integer值:【{}】",entry.getValue());
|
||||
BCHANG=true;
|
||||
}
|
||||
COUNTER++;
|
||||
|
@ -279,9 +278,9 @@ public class ChangString {
|
|||
if(entry.getValue() instanceof Long){
|
||||
if(key.equals(entry.getKey())){
|
||||
if(keyindex==COUNTER){
|
||||
LogUtil.APP.info("对象原始Long值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象原始Long值:【{}】",entry.getValue());
|
||||
entry.setValue(Long.valueOf(value));
|
||||
LogUtil.APP.info("对象替换后Long值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象替换后Long值:【{}】",entry.getValue());
|
||||
BCHANG=true;
|
||||
}
|
||||
COUNTER++;
|
||||
|
@ -291,10 +290,10 @@ public class ChangString {
|
|||
if(entry.getValue() instanceof BigDecimal){
|
||||
if(key.equals(entry.getKey())){
|
||||
if(keyindex==COUNTER){
|
||||
LogUtil.APP.info("对象原始BigDecimal值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象原始BigDecimal值:【{}】",entry.getValue());
|
||||
BigDecimal bd = new BigDecimal(value);
|
||||
entry.setValue(bd);
|
||||
LogUtil.APP.info("对象替换后BigDecimal值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象替换后BigDecimal值:【{}】",entry.getValue());
|
||||
BCHANG=true;
|
||||
}
|
||||
COUNTER++;
|
||||
|
@ -304,9 +303,9 @@ public class ChangString {
|
|||
if(entry.getValue() instanceof Boolean){
|
||||
if(key.equals(entry.getKey())){
|
||||
if(keyindex==COUNTER){
|
||||
LogUtil.APP.info("对象原始Boolean值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象原始Boolean值:【{}】",entry.getValue());
|
||||
entry.setValue(Boolean.valueOf(value));
|
||||
LogUtil.APP.info("对象替换后Boolean值:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("对象替换后Boolean值:【{}】",entry.getValue());
|
||||
BCHANG=true;
|
||||
}
|
||||
COUNTER++;
|
||||
|
@ -326,10 +325,7 @@ public class ChangString {
|
|||
*/
|
||||
public static Map<String, String> changjson(String json, String key, String value,int index) {
|
||||
json=json.trim();
|
||||
LogUtil.APP.info("原始JSON:【"+json+"】");
|
||||
LogUtil.APP.info("待替换JSON KEY:【"+key+"】");
|
||||
LogUtil.APP.info("待替换JSON VALUE:【"+value+"】");
|
||||
LogUtil.APP.info("待替换JSON KEY序号:【"+index+"】");
|
||||
LogUtil.APP.info("原始JSON:【{}】,待替换JSON KEY:【{}】,待替换JSON VALUE:【{}】,待替换JSON KEY序号:【{}】",json,key,value,index);
|
||||
Map<String, String> map = new HashMap<String, String>(0);
|
||||
map.put("json", json);
|
||||
map.put("boolean", BCHANG.toString().toLowerCase());
|
||||
|
@ -339,12 +335,11 @@ public class ChangString {
|
|||
JSONObject jsonStr = JSONObject.parseObject(json);
|
||||
jsonStr=parseJsonString(json,key,value,index);
|
||||
if (BCHANG) {
|
||||
LogUtil.APP
|
||||
.info("JSON字符串替换成功,新JSON:【" + jsonStr.toJSONString() + "】");
|
||||
LogUtil.APP.info("JSON字符串替换成功,新JSON:【{}】",jsonStr.toJSONString());
|
||||
}
|
||||
map.put("json", jsonStr.toJSONString());
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("格式化成JSON异常,请检查参数:" + json, e);
|
||||
LogUtil.APP.error("格式化成JSON异常,请检查参数:{}",json, e);
|
||||
return map;
|
||||
}
|
||||
} else if (json.startsWith("[") && json.endsWith("]")) {
|
||||
|
@ -356,15 +351,14 @@ public class ChangString {
|
|||
jsonStr=parseJsonString(jsonStr.toJSONString(),key,value,index);
|
||||
if(BCHANG){
|
||||
jsonarr.set(i, jsonStr);
|
||||
LogUtil.APP.info(
|
||||
"JSONARRAY字符串替换成功,新JSONARRAY:【" + jsonarr.toJSONString() + "】");
|
||||
LogUtil.APP.info("JSONARRAY字符串替换成功,新JSONARRAY:【{}】",jsonarr.toJSONString());
|
||||
break;
|
||||
}
|
||||
}
|
||||
map.put("json", jsonarr.toJSONString());
|
||||
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("格式化成JSONArray异常,请检查参数:" + json, e);
|
||||
LogUtil.APP.error("格式化成JSONArray异常,请检查参数:{}",json, e);
|
||||
return map;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -55,15 +55,15 @@ public class ParamsManageForSteps {
|
|||
Random random = new Random();
|
||||
String replacement = String.valueOf(random.nextInt(endnum - startnum + 1) + startnum);
|
||||
params = m.replaceFirst(replacement);
|
||||
LogUtil.APP.info("Params(" + matcherstr + "):替换成随机数后,字符串:" + params);
|
||||
LogUtil.APP.info("Params({}):替换成随机数后,字符串:{}",matcherstr,params);
|
||||
m = pattern.matcher(params);
|
||||
}
|
||||
return params;
|
||||
} catch (IllegalArgumentException iae) {
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查数字区间是否正常!");
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查数字区间是否正常!",iae);
|
||||
return params;
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查你的格式是否正确!");
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查你的格式是否正确!",e);
|
||||
return params;
|
||||
}
|
||||
}
|
||||
|
@ -92,18 +92,18 @@ public class ParamsManageForSteps {
|
|||
matcherstr=df.format(new Date());
|
||||
}
|
||||
} catch (IllegalArgumentException iae) {
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查你的格式是否正确!");
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查你的格式是否正确!",iae);
|
||||
df = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");
|
||||
matcherstr=df.format(new Date());
|
||||
} finally {
|
||||
params = m.replaceFirst(matcherstr);
|
||||
LogUtil.APP.info("Params(" + matcherstr + "):替换成随机数后,字符串:" + params);
|
||||
LogUtil.APP.info("Params({}):替换成随机数后,字符串:{}",matcherstr,params);
|
||||
m = pattern.matcher(params);
|
||||
}
|
||||
}
|
||||
return params;
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查你的格式是否正确!");
|
||||
LogUtil.APP.error("处理随机数字参数过程中出现异常,请检查你的格式是否正确!",e);
|
||||
return params;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ public class GetJsonActionParser implements ActionKeyWordParser {
|
|||
key=actionParams;
|
||||
testResult=SubString.getJsonValue(testResult, key, index);
|
||||
}
|
||||
LogUtil.APP.info("Action(getJV):获取JSON字符串指定Key的值是:"+testResult);
|
||||
LogUtil.APP.info("Action(getJV):获取JSON字符串指定Key的值是:{}",testResult);
|
||||
return testResult;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,6 +3,8 @@ package luckyclient.caserun.publicdispose.actionkeyword;
|
|||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
|
||||
import luckyclient.publicclass.LogUtil;
|
||||
|
||||
/**
|
||||
* 动作关键字的处理接口的实现类:从响应header中取出某个header值
|
||||
* @author: sunshaoyan
|
||||
|
@ -19,7 +21,9 @@ public class HeaderParser implements ActionKeyWordParser {
|
|||
public String parse(String actionParams, String testResult) {
|
||||
String pre = "RESPONSE_HEAD:【";
|
||||
String headerStr = testResult.substring(testResult.indexOf(pre) + pre.length(), testResult.indexOf("】 RESPONSE_CODE"));
|
||||
return JSONObject.parseObject(headerStr).getJSONArray(actionParams).getString(0);
|
||||
String getHeader = JSONObject.parseObject(headerStr).getJSONArray(actionParams).getString(0);
|
||||
LogUtil.APP.info("Action(header):从响应header中取出指定header值是:{}",getHeader);
|
||||
return getHeader;
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@ public class SubCentreNumActionParser implements ActionKeyWordParser {
|
|||
String startnum=actionParams.substring(actionParams.indexOf("[")+1, actionParams.indexOf("]"));
|
||||
String endnum=actionParams.substring(actionParams.lastIndexOf("[")+1, actionParams.lastIndexOf("]"));
|
||||
testResult= SubString.subCentreNum(testResult, startnum, endnum);
|
||||
LogUtil.APP.info("Action(subCentreNum):截取测试结果指定开始及结束位置字符串:"+testResult);
|
||||
LogUtil.APP.info("Action(subCentreNum):½ØÈ¡²âÊÔ½á¹ûÖ¸¶¨¿ªÊ¼¼°½áÊøλÖÃ×Ö·û´®:{}",testResult);
|
||||
}else{
|
||||
testResult="步骤动作:subCentreNum 必须是[\"开始字符\"][\"结束字符\"]#subCentreNum 格式,请检查您的步骤动作参数:"+actionParams;
|
||||
LogUtil.APP.warn("步骤动作:subCentreNum 必须是[\"开始位置(整数)\"][\"结束位置(整数)\"]#subCentreNum 格式,请检查您的步骤动作参数:{}",actionParams);
|
||||
|
|
|
@ -25,7 +25,7 @@ public class SubCentresStrActionParser implements ActionKeyWordParser {
|
|||
startstr=actionParams.substring(actionParams.indexOf("[")+1, actionParams.indexOf("]"));
|
||||
endstr=actionParams.substring(actionParams.lastIndexOf("[")+1, actionParams.lastIndexOf("]"));
|
||||
testResult= SubString.subCentreStr(testResult, startstr, endstr);
|
||||
LogUtil.APP.info("Action(subCentreStr):截取测试结果指定开始及结束位置字符串:"+testResult);
|
||||
LogUtil.APP.info("Action(subCentreStr):½ØÈ¡²âÊÔ½á¹ûÖ¸¶¨¿ªÊ¼¼°½áÊøλÖÃ×Ö·û´®:{}",testResult);
|
||||
}else{
|
||||
testResult="步骤动作:subCentreStr 必须是[\"开始字符\"][\"结束字符\"]#subCentreStr 格式,请检查您的步骤动作参数:"+actionParams;
|
||||
LogUtil.APP.warn("步骤动作:subCentreStr 必须是[\"开始字符\"][\"结束字符\"]#subCentreStr 格式,请检查您的步骤动作参数:{}",actionParams);
|
||||
|
|
|
@ -29,7 +29,7 @@ public class SubStrRegxActionParser implements ActionKeyWordParser {
|
|||
key=actionParams;
|
||||
testResult= SubString.subStrRgex(testResult, key, index);
|
||||
}
|
||||
LogUtil.APP.info("Action(subStrRgex):获取JSON字符串指定Key的值是:"+testResult);
|
||||
LogUtil.APP.info("Action(subStrRgex):获取JSON字符串指定Key的值是:{}",testResult);
|
||||
return testResult;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@ public class ThreadWaitAction implements ActionKeyWordParser {
|
|||
// 获取步骤间等待时间
|
||||
int time=Integer.parseInt(actionParams);
|
||||
if (time > 0) {
|
||||
LogUtil.APP.info("Action(Wait):Ï̵߳ȴý"+time+"Ãë...");
|
||||
LogUtil.APP.info("Action(Wait):Ï̵߳ȴý¡¾{}¡¿Ãë...",time);
|
||||
Thread.sleep(time * 1000);
|
||||
}
|
||||
} catch (InterruptedException e) {
|
||||
|
|
|
@ -50,8 +50,7 @@ public class LogOperation {
|
|||
String imgname) {
|
||||
if (0 == exetype) {
|
||||
if (logDetail.length()>5000) {
|
||||
LogUtil.APP.info("日志明细超过5000字符,无法进入数据库存储,进行日志明细打印...");
|
||||
LogUtil.APP.info("第"+logStep+"步,日志级别"+logGrade+",日志明细【"+logGrade+"】...");
|
||||
LogUtil.APP.info("第{}步,日志级别{},日志明细【{}】...日志明细超过5000字符,无法进入数据库存储,进行日志明细打印...",logStep,logGrade,logDetail);
|
||||
logDetail="日志明细超过5000字符无法存入数据库,已在LOG4J日志中打印,请前往查看...";
|
||||
}
|
||||
|
||||
|
@ -137,7 +136,7 @@ public class LogOperation {
|
|||
}
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("获取邮件收件人地址出现异常,请检查!",e);
|
||||
return address;
|
||||
}
|
||||
return address;
|
||||
|
@ -170,7 +169,7 @@ public class LogOperation {
|
|||
}
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("获取构建地址出现异常,请检查!",e);
|
||||
return buildname;
|
||||
}
|
||||
return buildname;
|
||||
|
@ -207,7 +206,7 @@ public class LogOperation {
|
|||
}
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("获取远程shell地址出现异常,请检查!",e);
|
||||
return command;
|
||||
}
|
||||
return command;
|
||||
|
@ -235,7 +234,7 @@ public class LogOperation {
|
|||
}
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("获取任务测试时长出现异常,请检查!",e);
|
||||
return desTime;
|
||||
}
|
||||
return desTime;
|
||||
|
@ -252,14 +251,10 @@ public class LogOperation {
|
|||
driverType = taskScheduling.getBrowserType();
|
||||
} catch (Exception e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("获取浏览器类型出现异常,请检查!",e);
|
||||
return driverType;
|
||||
}
|
||||
return driverType;
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
// TODO Auto-generated method stub
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -14,6 +14,8 @@ import com.alibaba.fastjson.JSONObject;
|
|||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.alibaba.fastjson.parser.Feature;
|
||||
|
||||
import luckyclient.publicclass.LogUtil;
|
||||
|
||||
/**
|
||||
* 公用驱动
|
||||
* =================================================================
|
||||
|
@ -45,6 +47,7 @@ public class SubString {
|
|||
String getstr = str.substring(startnum,endnum);
|
||||
return getstr;
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("subCentreStr截取字符串出现异常,请检查参数!",e);
|
||||
return "截取字符串出现异常,请检查参数!";
|
||||
}
|
||||
}
|
||||
|
@ -61,6 +64,7 @@ public class SubString {
|
|||
String getstr = str.substring(str.indexOf(startstr) + startstr.length());
|
||||
return getstr;
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("subStartStr截取字符串出现异常,请检查参数!",e);
|
||||
return "截取字符串出现异常,请检查参数!";
|
||||
}
|
||||
}
|
||||
|
@ -77,6 +81,7 @@ public class SubString {
|
|||
String getstr = str.substring(0, str.indexOf(endstr));
|
||||
return getstr;
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("subEndStr截取字符串出现异常,请检查参数!",e);
|
||||
return "截取字符串出现异常,请检查参数!";
|
||||
}
|
||||
}
|
||||
|
@ -116,6 +121,7 @@ public class SubString {
|
|||
|
||||
return getstr;
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("subCentreNum截取字符串出现异常,请检查参数!",e);
|
||||
return "截取字符串出现异常,请检查参数!";
|
||||
}
|
||||
}
|
||||
|
@ -145,6 +151,7 @@ public class SubString {
|
|||
|
||||
return getstr;
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("subStartNum截取字符串出现异常,请检查参数!",e);
|
||||
return "截取字符串出现异常,请检查参数!";
|
||||
}
|
||||
}
|
||||
|
@ -174,6 +181,7 @@ public class SubString {
|
|||
|
||||
return getstr;
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("subEndNum截取字符串出现异常,请检查参数!",e);
|
||||
return "截取字符串出现异常,请检查参数!";
|
||||
}
|
||||
}
|
||||
|
@ -206,6 +214,7 @@ public class SubString {
|
|||
}
|
||||
return getstr;
|
||||
}catch(Exception e){
|
||||
LogUtil.APP.error("subStrRgex截取字符串出现异常,请检查参数!",e);
|
||||
return "截取字符串出现异常,请检查参数!";
|
||||
}
|
||||
}
|
||||
|
@ -351,9 +360,4 @@ public class SubString {
|
|||
return result;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ public class BuildingInitialization {
|
|||
String result = JenkinsBuilding.buildingResult(buildname[i]);
|
||||
if(result.indexOf("alt=\"Failed\"")>-1){
|
||||
buildresult = "项目"+buildname[i]+"构建失败,自动化测试退出!";
|
||||
LogUtil.APP.warn("项目"+buildname[i]+"构建失败,自动化测试退出!");
|
||||
LogUtil.APP.warn("项目【{}】构建失败,自动化测试退出!",buildname[i]);
|
||||
break;
|
||||
}else if(result.indexOf("alt=\"Success\"")>-1){
|
||||
k++;
|
||||
|
@ -34,7 +34,7 @@ public class BuildingInitialization {
|
|||
if(buildresult.indexOf("Status:true")<=-1){
|
||||
break;
|
||||
}
|
||||
LogUtil.APP.info("正在检查构建中的项目(每6秒检查一次)。。。需要构建项目"+buildname.length+"个,目前成功"+k+"个");
|
||||
LogUtil.APP.info("正在检查构建中的项目(每6秒检查一次)。。。需要构建项目【{}】个,目前成功【{}】个",buildname.length,k);
|
||||
if(k==buildname.length){
|
||||
break;
|
||||
}
|
||||
|
@ -67,10 +67,5 @@ public class BuildingInitialization {
|
|||
return result;
|
||||
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -48,7 +48,7 @@ public class JenkinsBuilding {
|
|||
Map<String, List<String>> map = connection.getHeaderFields();
|
||||
// 遍历所有的响应头字段
|
||||
for (String key : map.keySet()) {
|
||||
LogUtil.APP.info(key + "--->" + map.get(key));
|
||||
LogUtil.APP.info("{}--->{}",key,map.get(key));
|
||||
}
|
||||
// 定义 BufferedReader输入流来读取URL的响应
|
||||
in = new BufferedReader(new InputStreamReader(
|
||||
|
@ -68,7 +68,7 @@ public class JenkinsBuilding {
|
|||
in.close();
|
||||
}
|
||||
} catch (Exception e2) {
|
||||
e2.printStackTrace();
|
||||
LogUtil.APP.error("使用finally块来关闭输入流时出现异常!", e2);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
@ -104,7 +104,7 @@ public class JenkinsBuilding {
|
|||
Map<String, List<String>> map = connection.getHeaderFields();
|
||||
// 遍历所有的响应头字段
|
||||
for (String key : map.keySet()) {
|
||||
LogUtil.APP.info(key + "--->" + map.get(key));
|
||||
LogUtil.APP.info("{}--->{}",key,map.get(key));
|
||||
}
|
||||
// 定义 BufferedReader输入流来读取URL的响应
|
||||
in = new BufferedReader(new InputStreamReader(
|
||||
|
|
|
@ -21,10 +21,9 @@ public class RestartServerInitialization {
|
|||
try{
|
||||
String[] command = LogOperation.getRestartComm(tastid);
|
||||
if(command!=null){
|
||||
LogUtil.APP.info("准备重启指定的TOMCAT!请稍等。。。参数个数:"+command.length);
|
||||
LogUtil.APP.info("准备重启指定的TOMCAT!请稍等。。。参数个数:{}",command.length);
|
||||
if(command.length==5){
|
||||
LogUtil.APP.info("开始调用重启TOMCAT方法。。。参数0:"+command[0]+" 参数1:"+command[1]
|
||||
+" 参数2:"+command[2]+" 参数3:"+command[3]+" 参数4:"+command[4]);
|
||||
LogUtil.APP.info("开始调用重启TOMCAT方法。。。参数0:{} 参数1:{} 参数2:{} 参数3:{} 参数4:{}",command[0],command[1],command[2],command[3],command[4]);
|
||||
result = RmtShellExecutor.sshShell(command[0], command[1], command[2], Integer.valueOf(command[3]), command[4]);
|
||||
}else{
|
||||
LogUtil.APP.warn("重启TOMCAT命令行参数出现异常,请检查配置信息!");
|
||||
|
@ -42,9 +41,5 @@ public class RestartServerInitialization {
|
|||
return result;
|
||||
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ public class RmtShellExecutor {
|
|||
String result = "Status:true"+" 重启命令执行成功!";
|
||||
try {
|
||||
JSch jsch = new JSch();
|
||||
LogUtil.APP.info("进入到重启TOMCAT方法。。。");
|
||||
LogUtil.APP.info("进入到重启TOMCAT方法...");
|
||||
//设置密钥和密码
|
||||
if (privateKey != null && !"".equals(privateKey)) {
|
||||
if (passphrase != null && "".equals(passphrase)) {
|
||||
|
@ -47,11 +47,11 @@ public class RmtShellExecutor {
|
|||
|
||||
if(port <=0){
|
||||
//连接服务器,采用默认端口
|
||||
LogUtil.APP.info("设置重启TOMCAT服务器IP及默认端口。。。");
|
||||
LogUtil.APP.info("设置重启TOMCAT服务器IP及默认端口...");
|
||||
session = jsch.getSession(user, ip);
|
||||
}else{
|
||||
//采用指定的端口连接服务器
|
||||
LogUtil.APP.info("设置重启TOMCAT服务器IP及端口。。。");
|
||||
LogUtil.APP.info("设置重启TOMCAT服务器IP及端口...");
|
||||
session = jsch.getSession(user, ip ,port);
|
||||
LogUtil.APP.info("设置重启TOMCAT服务器IP及端口完成!");
|
||||
}
|
||||
|
@ -96,13 +96,13 @@ public class RmtShellExecutor {
|
|||
|
||||
//转换输出结果并打印出来
|
||||
String temp = new String(data, 0, nLen,"iso8859-1");
|
||||
LogUtil.APP.info("开始打印重启TOMCAT命令执行结果"+temp);
|
||||
LogUtil.APP.info("开始打印重启TOMCAT命令执行结果...",temp);
|
||||
}
|
||||
outstream.close();
|
||||
instream.close();
|
||||
} catch (Exception e) {
|
||||
result = "重启TOMCAT过程中,出现异常!";
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("重启TOMCAT过程中,出现异常!", e);
|
||||
return result;
|
||||
} finally {
|
||||
if(null!=session){
|
||||
|
|
|
@ -8,6 +8,7 @@ import java.util.Properties;
|
|||
import freemarker.cache.ClassTemplateLoader;
|
||||
import freemarker.template.Configuration;
|
||||
import freemarker.template.Template;
|
||||
import luckyclient.publicclass.LogUtil;
|
||||
import luckyclient.publicclass.SysConfig;
|
||||
|
||||
/**
|
||||
|
@ -58,6 +59,7 @@ public class FreemarkerEmailTemplate {
|
|||
template.process(parameters, stringWriter);
|
||||
return stringWriter.toString();
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("获取邮件模板引擎配置出现异常",e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -38,7 +38,7 @@ public class HtmlMail {
|
|||
Map<String, String> headmsg = new HashMap<>(0);
|
||||
Properties properties = SysConfig.getConfiguration();
|
||||
if ("true".equals(properties.getProperty("task.push.switch").toLowerCase())) {
|
||||
LogUtil.APP.info("开始向第三方平台推送任务执行情况....");
|
||||
LogUtil.APP.info("开始向第三方平台推送任务执行情况...");
|
||||
Map<String, Object> pushparameters = new HashMap<>(0);
|
||||
pushparameters.put("buildstatus", buildstatus);
|
||||
pushparameters.put("restartstatus", restartstatus);
|
||||
|
@ -59,7 +59,6 @@ public class HtmlMail {
|
|||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("向第三方平台推送任务执行情况出现异常,请检查!", e);
|
||||
e.printStackTrace();
|
||||
return fet.getText("task-body", parameters);
|
||||
}
|
||||
return fet.getText("task-body", parameters);
|
||||
|
|
|
@ -51,7 +51,7 @@ public class MailSendInitialization {
|
|||
String[] addresses = LogOperation.getEmailAddress(taskid);
|
||||
Properties properties = SysConfig.getConfiguration();
|
||||
if (addresses != null) {
|
||||
LogUtil.APP.info("准备将测试结果发送邮件通知!请稍等。。。。");
|
||||
LogUtil.APP.info("准备将测试结果发送邮件通知!请稍等...");
|
||||
//这个类主要是设置邮件
|
||||
MailSenderInfo mailInfo = new MailSenderInfo();
|
||||
//这个类主要来发送邮件
|
||||
|
@ -77,17 +77,13 @@ public class MailSendInitialization {
|
|||
}
|
||||
String addressesmail = stringBuilder.toString();
|
||||
if (sms.sendHtmlMail(mailInfo)) {
|
||||
LogUtil.APP.info("给" + addressesmail + "的测试结果通知邮件发送完成!");
|
||||
LogUtil.APP.info("给{}的测试结果通知邮件发送完成!",addressesmail);
|
||||
} else {
|
||||
LogUtil.APP.warn("给" + addressesmail + "的测试结果通知邮件发送失败!");
|
||||
LogUtil.APP.warn("给{}的测试结果通知邮件发送失败!",addressesmail);
|
||||
}
|
||||
} else {
|
||||
LogUtil.APP.info("当前任务不需要发送邮件通知!");
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -78,7 +78,7 @@ public class MailSenderInfo {
|
|||
p.put("mail.smtp.ssl.socketFactory", sf);
|
||||
}
|
||||
} catch (GeneralSecurityException e) {
|
||||
LogUtil.APP.error("获得邮件会话属性失败或异常: " + e.getMessage());
|
||||
LogUtil.APP.error("获得邮件会话属性失败或异常: ",e);
|
||||
return null;
|
||||
}
|
||||
return p;
|
||||
|
|
|
@ -19,7 +19,7 @@ public class AppiumConfig {
|
|||
InputStream in = new BufferedInputStream(AppiumConfig.class.getResourceAsStream(SYS_CONFIG_FILE));
|
||||
SYS_CONFIG.load(new InputStreamReader(in, "UTF-8"));
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("读取移动端appium_config.properties配置文件出现异常,请检查!", e);
|
||||
}
|
||||
}
|
||||
private AppiumConfig(){}
|
||||
|
|
|
@ -83,7 +83,7 @@ public class InvokeMethod {
|
|||
}
|
||||
String templateidstr = extend.substring(1, extend.indexOf("】"));
|
||||
String templatenamestr = extend.substring(extend.indexOf("】") + 1);
|
||||
LogUtil.APP.info("即将使用模板【" + templatenamestr + "】,ID:【" + templateidstr + "】发送HTTP请求!");
|
||||
LogUtil.APP.info("即将使用模板【{}】,ID:【{}】发送HTTP请求!",templatenamestr,templateidstr);
|
||||
|
||||
ProjectProtocolTemplate ppt = GetServerAPI.clientGetProjectProtocolTemplateByTemplateId(Integer.valueOf(templateidstr));
|
||||
if (null == ppt) {
|
||||
|
@ -134,7 +134,7 @@ public class InvokeMethod {
|
|||
if (key.contains("[") && key.endsWith("]")) {
|
||||
index = Integer.valueOf(key.substring(key.lastIndexOf("[") + 1, key.lastIndexOf("]")));
|
||||
key = key.substring(0, key.lastIndexOf("["));
|
||||
LogUtil.APP.info("准备替换JSON对象中的参数值,替换指定第" + index + "个参数...");
|
||||
LogUtil.APP.info("准备替换JSON对象中的参数值,替换指定第{}个参数...",index);
|
||||
} else {
|
||||
LogUtil.APP.info("准备替换JSON对象中的参数值,未检测到指定参数名序号,默认替换第1个参数...");
|
||||
}
|
||||
|
@ -145,14 +145,14 @@ public class InvokeMethod {
|
|||
ptp.setParamValue(map.get("json"));
|
||||
paramslist.set(i, ptp);
|
||||
replaceflag=1;
|
||||
LogUtil.APP.info("替换参数"+key+"完成...");
|
||||
LogUtil.APP.info("替换参数【{}】完成...",key);
|
||||
break;
|
||||
}
|
||||
}else if(ptp.getParamValue().contains(key)){
|
||||
ptp.setParamValue(ptp.getParamValue().replace(key, value));
|
||||
paramslist.set(i, ptp);
|
||||
replaceflag=1;
|
||||
LogUtil.APP.info("检查当前文本不属于JSON,在字符串【"+ptp.getParamValue()+"】中直接把【"+key+"】替换成【"+value+"】...");
|
||||
LogUtil.APP.info("检查当前文本不属于JSON,在字符串【{}】中直接把【{}】替换成【{}】...",ptp.getParamValue(),key,value);
|
||||
break;
|
||||
}else{
|
||||
LogUtil.APP.warn("请检查您的纯文本模板是否是正常的JSON格式或是文本中是否存在需替换的关键字。");
|
||||
|
@ -162,14 +162,14 @@ public class InvokeMethod {
|
|||
ptp.setParamValue(value);
|
||||
paramslist.set(i, ptp);
|
||||
replaceflag=1;
|
||||
LogUtil.APP.info("把模板中参数【"+key+"】的值设置成【"+value+"】");
|
||||
LogUtil.APP.info("把模板中参数【{}】的值设置成【{}】",key,value);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(replaceflag==0){
|
||||
LogUtil.APP.warn("步骤参数【"+key+"】没有在模板中找到可替换的参数对应默认值,"
|
||||
+ "设置请求参数失败,请检查协议模板中此参数是否存在。");
|
||||
LogUtil.APP.warn("步骤参数【{}】没有在模板中找到可替换的参数对应默认值,"
|
||||
+ "设置请求参数失败,请检查协议模板中此参数是否存在。",key);
|
||||
}
|
||||
}else{
|
||||
LogUtil.APP.warn("替换模板或是头域参数失败,原因是因为没有检测到#,"
|
||||
|
@ -191,26 +191,26 @@ public class InvokeMethod {
|
|||
if (ptp.getParamType() == 1) {
|
||||
JSONObject json = JSONObject.parseObject(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), json);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 JSONObject类型参数值:【" + json.toString() + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 JSONObject类型参数值:【{}】",ptp.getParamName(),json.toString());
|
||||
} else if (ptp.getParamType() == 2) {
|
||||
JSONArray jarr = JSONArray.parseArray(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), jarr);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 JSONArray类型参数值:【" + jarr.toString() + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 JSONArray类型参数值:【{}】",ptp.getParamName(),jarr.toString());
|
||||
} else if (ptp.getParamType() == 3) {
|
||||
File file = new File(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), file);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 File类型参数值:【" + file.getAbsolutePath() + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 File类型参数值:【{}】",ptp.getParamName(),file.getAbsolutePath());
|
||||
} else if (ptp.getParamType() == 4) {
|
||||
Double dp = Double.valueOf(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), dp);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 数字类型参数值:【" + tempparam + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 数字类型参数值:【{}】",ptp.getParamName(),tempparam);
|
||||
} else if (ptp.getParamType() == 5) {
|
||||
Boolean bn = Boolean.valueOf(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), bn);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 Boolean类型参数值:【" + bn + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 Boolean类型参数值:【{}】",ptp.getParamName(),bn);
|
||||
} else {
|
||||
params.put(ptp.getParamName().replace(""", "\""), ptp.getParamValue().replace(""", "\""));
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 String类型参数值:【" + ptp.getParamValue().replace(""", "\"") + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 String类型参数值:【{}】",ptp.getParamName(),ptp.getParamValue().replace(""", "\""));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -240,13 +240,13 @@ public class InvokeMethod {
|
|||
} else if (functionname.toLowerCase().equals("httpclientget")) {
|
||||
result = HttpClientHelper.httpClientGet(packagename, params, headmsg, ppt);
|
||||
} else {
|
||||
LogUtil.APP.warn("您的HTTP操作方法异常,检测到的操作方法是:" + functionname);
|
||||
LogUtil.APP.warn("您的HTTP操作方法异常,检测到的操作方法是:{}",functionname);
|
||||
result = "调用异常,请查看错误日志!";
|
||||
}
|
||||
} else if (steptype == 4) {
|
||||
String templateidstr = extend.substring(1, extend.indexOf("】"));
|
||||
String templatenamestr = extend.substring(extend.indexOf("】") + 1);
|
||||
LogUtil.APP.info("即将使用模板【" + templatenamestr + "】,ID:【" + templateidstr + "】 发送SOCKET请求!");
|
||||
LogUtil.APP.info("即将使用模板【{}】,ID:【{}】 发送SOCKET请求!",templatenamestr,templateidstr);
|
||||
|
||||
ProjectProtocolTemplate ppt = GetServerAPI.clientGetProjectProtocolTemplateByTemplateId(Integer.valueOf(templateidstr));
|
||||
if (null == ppt) {
|
||||
|
@ -297,7 +297,7 @@ public class InvokeMethod {
|
|||
key = key.substring(0, key.lastIndexOf("["));
|
||||
LogUtil.APP.info("准备替换JSON对象中的参数值,未检测到指定参数名序号,默认替换第1个参数...");
|
||||
} else {
|
||||
LogUtil.APP.info("准备替换JSON对象中的参数值,替换指定第" + index + "个参数...");
|
||||
LogUtil.APP.info("准备替换JSON对象中的参数值,替换指定第【{}】个参数...",index);
|
||||
}
|
||||
|
||||
Map<String,String> map=ChangString.changjson(ptp.getParamValue(), key, value,index);
|
||||
|
@ -305,14 +305,14 @@ public class InvokeMethod {
|
|||
ptp.setParamValue(map.get("json"));
|
||||
paramslist.set(i, ptp);
|
||||
replaceflag=1;
|
||||
LogUtil.APP.info("替换参数"+key+"完成...");
|
||||
LogUtil.APP.info("替换参数【{}】完成...",key);
|
||||
break;
|
||||
}
|
||||
}else if(ptp.getParamValue().indexOf(key)>=0){
|
||||
ptp.setParamValue(ptp.getParamValue().replace(key, value));
|
||||
paramslist.set(i, ptp);
|
||||
replaceflag=1;
|
||||
LogUtil.APP.info("检查当前文本不属于JSON,在字符串【"+ptp.getParamValue()+"】中直接把【"+key+"】替换成【"+value+"】...");
|
||||
LogUtil.APP.info("检查当前文本不属于JSON,在字符串【{}】中直接把【{}】替换成【{}】...",ptp.getParamValue(),key,value);
|
||||
break;
|
||||
}else{
|
||||
LogUtil.APP.warn("请检查您的纯文本模板是否是正常的JSON格式或是文本中是否存在需替换的关键字。");
|
||||
|
@ -322,14 +322,14 @@ public class InvokeMethod {
|
|||
ptp.setParamValue(value);
|
||||
paramslist.set(i, ptp);
|
||||
replaceflag=1;
|
||||
LogUtil.APP.info("把模板中参数【"+key+"】的值设置成【"+value+"】");
|
||||
LogUtil.APP.info("把模板中参数【{}】的值设置成【{}】",key,value);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(replaceflag==0){
|
||||
LogUtil.APP.warn("步骤参数【"+key+"】没有在模板中找到可替换的参数对应默认值,"
|
||||
+ "设置请求参数失败,请检查协议模板中此参数是否存在。");
|
||||
LogUtil.APP.warn("步骤参数【{}】没有在模板中找到可替换的参数对应默认值,"
|
||||
+ "设置请求参数失败,请检查协议模板中此参数是否存在。",key);
|
||||
}
|
||||
}else{
|
||||
LogUtil.APP.warn("替换模板或是头域参数失败,原因是因为没有检测到#,"
|
||||
|
@ -349,26 +349,26 @@ public class InvokeMethod {
|
|||
if (ptp.getParamType() == 1) {
|
||||
JSONObject json = JSONObject.parseObject(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), json);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 JSONObject类型参数值:【" + json.toString() + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 JSONObject类型参数值:【{}】",ptp.getParamName(),json.toString());
|
||||
} else if (ptp.getParamType() == 2) {
|
||||
JSONArray jarr = JSONArray.parseArray(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), jarr);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 JSONArray类型参数值:【" + jarr.toString() + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 JSONArray类型参数值:【{}】",ptp.getParamName(),jarr.toString());
|
||||
} else if (ptp.getParamType() == 3) {
|
||||
File file = new File(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), file);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 File类型参数值:【" + file.getAbsolutePath() + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 File类型参数值:【{}】",ptp.getParamName(),file.getAbsolutePath());
|
||||
} else if (ptp.getParamType() == 4) {
|
||||
Double dp = Double.valueOf(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), dp);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 数字类型参数值:【" + tempparam + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 数字类型参数值:【{}】",ptp.getParamName(),tempparam);
|
||||
} else if (ptp.getParamType() == 5) {
|
||||
Boolean bn = Boolean.valueOf(tempparam);
|
||||
params.put(ptp.getParamName().replace(""", "\""), bn);
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 Boolean类型参数值:【" + bn + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 Boolean类型参数值:【{}】",ptp.getParamName(),bn);
|
||||
} else {
|
||||
params.put(ptp.getParamName().replace(""", "\""), ptp.getParamValue().replace(""", "\""));
|
||||
LogUtil.APP.info("模板参数【" + ptp.getParamName() + "】 String类型参数值:【" + ptp.getParamValue().replace(""", "\"") + "】");
|
||||
LogUtil.APP.info("模板参数【{}】 String类型参数值:【{}】",ptp.getParamName(),ptp.getParamValue().replace(""", "\""));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -378,12 +378,12 @@ public class InvokeMethod {
|
|||
} else if (functionname.toLowerCase().equals("socketget")) {
|
||||
result = HttpClientHelper.sendSocketGet(packagename, params, ppt.getEncoding().toLowerCase(), headmsg);
|
||||
} else {
|
||||
LogUtil.APP.warn("您的SOCKET操作方法异常,检测到的操作方法是:" + functionname);
|
||||
LogUtil.APP.warn("您的SOCKET操作方法异常,检测到的操作方法是:{}",functionname);
|
||||
result = "调用异常,请查看错误日志!";
|
||||
}
|
||||
}
|
||||
} catch (Throwable e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("调用异常,请查看错误日志!", e);
|
||||
return "调用异常,请查看错误日志!";
|
||||
}
|
||||
return result;
|
||||
|
@ -457,7 +457,7 @@ public class InvokeMethod {
|
|||
args[1]=packagename+File.separator+functionname;
|
||||
//args[1]="E:\\PycharmProjects\\untitled\\venv\\testaaa.py";
|
||||
}
|
||||
LogUtil.APP.info("调用Python脚本路径:"+args[1]);
|
||||
LogUtil.APP.info("调用Python脚本路径:{}",args[1]);
|
||||
for(int i=0;i < params;i++){
|
||||
args[2+i]=getParameterValues[i].toString();
|
||||
}
|
||||
|
@ -479,29 +479,24 @@ public class InvokeMethod {
|
|||
// 打印流信息
|
||||
if(outerrStream.toString().equals("")){
|
||||
result = outStream.toString().trim();
|
||||
LogUtil.APP.info("成功调用Python脚本,返回结果:"+result);
|
||||
LogUtil.APP.info("成功调用Python脚本,返回结果:{}",result);
|
||||
}else{
|
||||
result = outerrStream.toString().trim();
|
||||
if(result.indexOf("ModuleNotFoundError")>-1){
|
||||
LogUtil.APP.warn("调用Python脚本出现异常,有相关Python模块未引用到,请在Python脚本中注意设置系统环境路径(例: sys.path.append(\"E:\\PycharmProjects\\untitled\\venv\\Lib\\site-packages\")),"
|
||||
+ "详细错误信息:"+result);
|
||||
+ "详细错误信息:{}",result);
|
||||
}else if(result.indexOf("No such file or directory")>-1){
|
||||
LogUtil.APP.warn("调用Python脚本出现异常,在指定路径下未找到Python脚本,原因有可能是Python脚本路径错误或是传入Python指定参数个数不一致,详细错误信息:"+result);
|
||||
LogUtil.APP.warn("调用Python脚本出现异常,在指定路径下未找到Python脚本,原因有可能是Python脚本路径错误或是传入Python指定参数个数不一致,详细错误信息:{}",result);
|
||||
}else{
|
||||
LogUtil.APP.warn("调用Python脚本出现异常,错误信息:"+result);
|
||||
LogUtil.APP.warn("调用Python脚本出现异常,错误信息:{}",result);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("调用Python脚本出现异常,请检查!",e);
|
||||
return result;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -87,7 +87,7 @@ public class HttpClientHelper {
|
|||
int responsecode=ppt.getIsResponseCode();
|
||||
|
||||
StringBuffer resultBuffer = null;
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
// 构建请求参数
|
||||
StringBuffer sbParams = new StringBuffer();
|
||||
if (params != null && params.size() > 0) {
|
||||
|
@ -100,7 +100,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(e.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置HTTPURLPost参数信息...key:【"+e.getKey()+"】 value:【"+e.getValue()+"】");
|
||||
LogUtil.APP.info("设置HTTPURLPost参数信息...key:【{}】 value:【{}】",e.getKey(),e.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -121,11 +121,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTPURLPost头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTPURLPost头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
con.setRequestProperty(key, value);
|
||||
}else{
|
||||
con.setRequestProperty(key, value);
|
||||
|
@ -161,14 +161,14 @@ public class HttpClientHelper {
|
|||
resultBuffer.append("Content-Length=0");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送post请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (osw != null) {
|
||||
try {
|
||||
osw.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送post请求后关闭流出现异常,请检查!", e);
|
||||
osw = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -182,7 +182,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送post请求后关闭流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -214,7 +214,7 @@ public class HttpClientHelper {
|
|||
|
||||
StringBuffer resultBuffer = null;
|
||||
// 构建请求参数
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
StringBuffer sbParams = new StringBuffer();
|
||||
if (params != null && params.size() > 0) {
|
||||
if(1==params.size()&¶ms.containsKey("_forTextJson")){
|
||||
|
@ -226,7 +226,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(e.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置URLPost参数信息...key:【"+e.getKey()+"】 value:【"+e.getValue()+"】");
|
||||
LogUtil.APP.info("设置URLPost参数信息...key:【{}】 value:【{}】",e.getKey(),e.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -246,11 +246,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换URLPost头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换URLPost头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
con.setRequestProperty(key, value);
|
||||
}else{
|
||||
con.setRequestProperty(key, value);
|
||||
|
@ -293,14 +293,14 @@ public class HttpClientHelper {
|
|||
resultBuffer.append("Content-Length=0");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用URLConnection发送post请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (osw != null) {
|
||||
try {
|
||||
osw.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用URLConnection发送post请求后关闭osw流出现异常,请检查!", e);
|
||||
osw = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -309,7 +309,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用URLConnection发送post请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -328,7 +328,7 @@ public class HttpClientHelper {
|
|||
*/
|
||||
public static String sendGetAndSaveFile(String urlParam, Map<String, Object> params, String fileSavePath, Map<String, String> headmsg,ProjectProtocolTemplate ppt) {
|
||||
// 构建请求参数
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
int timeout=ppt.getTimeout();
|
||||
int responsehead=ppt.getIsResponseHead();
|
||||
int responsecode=ppt.getIsResponseCode();
|
||||
|
@ -343,7 +343,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(entry.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置HTTPSaveFile参数信息...key:【"+entry.getKey()+"】 value:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("设置HTTPSaveFile参数信息...key:【{}】 value:【{}】",entry.getKey(),entry.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -363,11 +363,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTPSaveFile头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTPSaveFile头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
con.setRequestProperty(key, value);
|
||||
}else{
|
||||
con.setRequestProperty(key, value);
|
||||
|
@ -395,14 +395,14 @@ public class HttpClientHelper {
|
|||
os.flush();
|
||||
return resultBuffer.toString()+"下载文件成功,请前往客户端路径:" + fileSavePath + " 查看附件。";
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("发送get请求保存下载文件出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (os != null) {
|
||||
try {
|
||||
os.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("发送get请求保存下载文件后关闭OS流出现异常,请检查!", e);
|
||||
os = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -416,7 +416,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("发送get请求保存下载文件后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -446,7 +446,7 @@ public class HttpClientHelper {
|
|||
|
||||
StringBuffer resultBuffer = null;
|
||||
// 构建请求参数
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
StringBuffer sbParams = new StringBuffer();
|
||||
if (params != null && params.size() > 0) {
|
||||
if(1==params.size()&¶ms.containsKey("_forTextJson")){
|
||||
|
@ -458,7 +458,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(entry.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置HTTPURLGet参数信息...key:【"+entry.getKey()+"】 value:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("设置HTTPURLGet参数信息...key:【{}】 value:【{}】",entry.getKey(),entry.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -477,11 +477,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTPURLGet头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTPURLGet头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
con.setRequestProperty(key, value);
|
||||
}else{
|
||||
con.setRequestProperty(key, value);
|
||||
|
@ -507,14 +507,14 @@ public class HttpClientHelper {
|
|||
resultBuffer.append("读取服务器响应数据异常!响应码:"+con.getResponseCode());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送get请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送get请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -545,7 +545,7 @@ public class HttpClientHelper {
|
|||
|
||||
StringBuffer resultBuffer = null;
|
||||
// 构建请求参数
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
StringBuffer sbParams = new StringBuffer();
|
||||
if (params != null && params.size() > 0) {
|
||||
if(1==params.size()&¶ms.containsKey("_forTextJson")){
|
||||
|
@ -557,7 +557,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(entry.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置URLGet参数信息...key:【"+entry.getKey()+"】 value:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("设置URLGet参数信息...key:【{}】 value:【{}】",entry.getKey(),entry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -580,11 +580,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换URLGet头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换URLGet头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
con.setRequestProperty(key, value);
|
||||
}else{
|
||||
con.setRequestProperty(key, value);
|
||||
|
@ -611,14 +611,14 @@ public class HttpClientHelper {
|
|||
resultBuffer.append("读取服务器响应数据异常!");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用URLConnection发送get请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用URLConnection发送get请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -646,7 +646,7 @@ public class HttpClientHelper {
|
|||
int responsecode=ppt.getIsResponseCode();
|
||||
|
||||
StringBuffer resultBuffer = null;
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
CloseableHttpClient httpclient=iniHttpClient(urlParam,cerpath);
|
||||
HttpPost httpPost = new HttpPost(urlParam);
|
||||
httpPost.setHeader("Content-Type", "application/json");
|
||||
|
@ -659,11 +659,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTPPostJson头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTPPostJson头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
httpPost.setHeader(key, value);
|
||||
}else{
|
||||
httpPost.setHeader(key, value);
|
||||
|
@ -674,12 +674,12 @@ public class HttpClientHelper {
|
|||
try {
|
||||
if(params.size()>0){
|
||||
if(1==params.size()&¶ms.containsKey("_forTextJson")){
|
||||
LogUtil.APP.info("参数类型:TEXT,设置HTTPPostJson参数信息...【"+params.get("_forTextJson").toString()+"】");
|
||||
LogUtil.APP.info("参数类型:TEXT,设置HTTPPostJson参数信息...【{}】",params.get("_forTextJson").toString());
|
||||
StringEntity entity = new StringEntity(params.get("_forTextJson").toString(),charset);
|
||||
httpPost.setEntity(entity);
|
||||
}else{
|
||||
String jsonString = JSON.toJSONString(params);
|
||||
LogUtil.APP.info("参数类型:FORM,设置HTTPPostJson参数信息...【"+jsonString+"】");
|
||||
LogUtil.APP.info("参数类型:FORM,设置HTTPPostJson参数信息...【{}】",jsonString);
|
||||
StringEntity entity = new StringEntity(jsonString,charset);
|
||||
httpPost.setEntity(entity);
|
||||
}
|
||||
|
@ -708,14 +708,14 @@ public class HttpClientHelper {
|
|||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient以JSON格式发送post请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient以JSON格式发送post请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -744,7 +744,7 @@ public class HttpClientHelper {
|
|||
|
||||
StringBuffer resultBuffer = null;
|
||||
CloseableHttpClient httpclient=iniHttpClient(urlParam,cerpath);
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
HttpPost httpPost = new HttpPost(urlParam);
|
||||
RequestConfig requestConfig = RequestConfig.custom()
|
||||
.setConnectTimeout(timeout)
|
||||
|
@ -755,11 +755,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTPClientPost头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTPClientPost头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
httpPost.setHeader(key, value);
|
||||
}else{
|
||||
httpPost.setHeader(key, value);
|
||||
|
@ -777,7 +777,7 @@ public class HttpClientHelper {
|
|||
List <NameValuePair> nvps = new ArrayList <NameValuePair>();
|
||||
for (Map.Entry<String, Object> m :params.entrySet()) {
|
||||
nvps.add(new BasicNameValuePair(m.getKey(), m.getValue().toString()));
|
||||
LogUtil.APP.info("设置HTTPClientPost参数信息...key:【"+m.getKey()+"】 value:【"+m.getValue()+"】");
|
||||
LogUtil.APP.info("设置HTTPClientPost参数信息...key:【{}】 value:【{}】",m.getKey(),m.getValue());
|
||||
}
|
||||
httpPost.setEntity(new UrlEncodedFormEntity(nvps,charset));
|
||||
}
|
||||
|
@ -806,14 +806,14 @@ public class HttpClientHelper {
|
|||
resultBuffer.append("读取服务器响应数据异常,响应码:"+response.getStatusLine().getStatusCode());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送post请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送post请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -842,7 +842,7 @@ public class HttpClientHelper {
|
|||
int responsecode=ppt.getIsResponseCode();
|
||||
|
||||
StringBuffer resultBuffer = null;
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
CloseableHttpClient httpclient=iniHttpClient(urlParam,cerpath);
|
||||
HttpPost httpPost = new HttpPost(urlParam);
|
||||
RequestConfig requestConfig = RequestConfig.custom()
|
||||
|
@ -854,11 +854,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换httpClientUploadFile头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换httpClientUploadFile头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
httpPost.setHeader(key, value);
|
||||
}else{
|
||||
httpPost.setHeader(key, value);
|
||||
|
@ -880,10 +880,10 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, Object> m :params.entrySet()) {
|
||||
if (m.getValue() instanceof File) {
|
||||
entityBuilder.addBinaryBody(m.getKey(), (File)m.getValue());
|
||||
LogUtil.APP.info("设置httpClientUploadFile 上传文件参数信息...key:【"+m.getKey()+"】 value:【"+m.getValue()+"】");
|
||||
LogUtil.APP.info("设置httpClientUploadFile 上传文件参数信息...key:【{}】 value:【{}】",m.getKey(),m.getValue());
|
||||
}else{
|
||||
entityBuilder.addTextBody(m.getKey(), m.getValue().toString());
|
||||
LogUtil.APP.info("设置httpClientUploadFile参数信息...key:【"+m.getKey()+"】 value:【"+m.getValue()+"】");
|
||||
LogUtil.APP.info("设置httpClientUploadFile参数信息...key:【{}】 value:【{}】",m.getKey(),m.getValue());
|
||||
}
|
||||
}
|
||||
HttpEntity reqEntity =entityBuilder.build();
|
||||
|
@ -914,14 +914,14 @@ public class HttpClientHelper {
|
|||
resultBuffer.append("读取服务器响应数据异常,响应码:"+response.getStatusLine().getStatusCode());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient上传文件出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient上传文件后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -949,7 +949,7 @@ public class HttpClientHelper {
|
|||
int responsecode=ppt.getIsResponseCode();
|
||||
|
||||
StringBuffer resultBuffer = null;
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
CloseableHttpClient httpclient=iniHttpClient(urlParam,cerpath);
|
||||
BufferedReader br = null;
|
||||
// 构建请求参数
|
||||
|
@ -965,11 +965,11 @@ public class HttpClientHelper {
|
|||
try {
|
||||
sbParams.append(URLEncoder.encode(String.valueOf(entry.getValue()), charset));
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送get请求拼接URL时出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置HTTPClientGet参数信息...key:【"+entry.getKey()+"】 value:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("设置HTTPClientGet参数信息...key:【{}】 value:【{}】",entry.getKey(),entry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -987,11 +987,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTPClientGet头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTPClientGet头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
httpGet.setHeader(key, value);
|
||||
}else{
|
||||
httpGet.setHeader(key, value);
|
||||
|
@ -1019,14 +1019,14 @@ public class HttpClientHelper {
|
|||
resultBuffer.append(temp);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送get请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送get请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -1046,7 +1046,7 @@ public class HttpClientHelper {
|
|||
public static String sendSocketPost(String urlParam, Map<String, Object> params, String charset,
|
||||
Map<String, String> headmsg) {
|
||||
String result = "";
|
||||
LogUtil.APP.info("设置Socket请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置Socket请求地址:【{}】",urlParam);
|
||||
// 构建请求参数
|
||||
StringBuffer sbParams = new StringBuffer();
|
||||
if (params != null && params.size() > 0) {
|
||||
|
@ -1059,7 +1059,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(entry.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置SocketPost参数信息...key:【"+entry.getKey()+"】 value:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("设置SocketPost参数信息...key:【{}】 value:【{}】",entry.getKey(),entry.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1084,11 +1084,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换Socket头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换Socket头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
sb.append(key+": "+value+" \r\n");
|
||||
}else{
|
||||
sb.append(key+": "+value+" \r\n");
|
||||
|
@ -1119,14 +1119,14 @@ public class HttpClientHelper {
|
|||
// 读取出响应体数据(就是你要的数据)
|
||||
result = readLine(is, contentLength, charset);
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送post请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (osw != null) {
|
||||
try {
|
||||
osw.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送post请求后关闭osw流出现异常,请检查!", e);
|
||||
osw = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -1134,7 +1134,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
socket.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送post请求后关闭socket出现异常,请检查!", e);
|
||||
socket = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -1145,7 +1145,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
is.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送post请求后关闭socket is对象出现异常,请检查!", e);
|
||||
is = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -1154,7 +1154,7 @@ public class HttpClientHelper {
|
|||
socket.close();
|
||||
} catch (IOException e) {
|
||||
socket = null;
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送post请求后关闭socket出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
@ -1174,7 +1174,7 @@ public class HttpClientHelper {
|
|||
*/
|
||||
public static String sendSocketGet(String urlParam, Map<String, Object> params, String charset,Map<String, String> headmsg) {
|
||||
String result = "";
|
||||
LogUtil.APP.info("设置Socket请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置Socket请求地址:【{}】",urlParam);
|
||||
// 构建请求参数
|
||||
StringBuffer sbParams = new StringBuffer();
|
||||
if (params != null && params.size() > 0) {
|
||||
|
@ -1187,7 +1187,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(entry.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置SocketPost参数信息...key:【"+entry.getKey()+"】 value:【"+entry.getValue()+"】");
|
||||
LogUtil.APP.info("设置SocketPost参数信息...key:【{}】 value:【{}】",entry.getKey(),entry.getValue());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1213,11 +1213,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换Socket头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换Socket头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
sb.append(key+": "+value+" \r\n");
|
||||
}else{
|
||||
sb.append(key+": "+value+" \r\n");
|
||||
|
@ -1248,14 +1248,14 @@ public class HttpClientHelper {
|
|||
// 读取出响应体数据(就是你要的数据)
|
||||
result = readLine(is, contentLength, charset);
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送get请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (osw != null) {
|
||||
try {
|
||||
osw.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送get请求后关闭osw流出现异常,请检查!", e);
|
||||
osw = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -1263,7 +1263,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
socket.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送get请求后关闭socket出现异常,请检查!", e);
|
||||
socket = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -1274,7 +1274,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
is.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送get请求后关闭socket is对象出现异常,请检查!", e);
|
||||
is = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -1282,7 +1282,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
socket.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用socket发送get请求后关闭socket对象出现异常,请检查!", e);
|
||||
socket = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -1344,7 +1344,7 @@ public class HttpClientHelper {
|
|||
|
||||
StringBuffer resultBuffer = null;
|
||||
// 构建请求参数
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
StringBuffer sbParams = new StringBuffer();
|
||||
if (params != null && params.size() > 0) {
|
||||
if(1==params.size()&¶ms.containsKey("_forTextJson")){
|
||||
|
@ -1356,7 +1356,7 @@ public class HttpClientHelper {
|
|||
sbParams.append("=");
|
||||
sbParams.append(e.getValue());
|
||||
sbParams.append("&");
|
||||
LogUtil.APP.info("设置HttpURLDel参数信息...key:【"+e.getKey()+"】 value:【"+e.getValue()+"】");
|
||||
LogUtil.APP.info("设置HttpURLDel参数信息...key:【{}】 value:【{}】",e.getKey(),e.getValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1376,11 +1376,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTP头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTP头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
con.setRequestProperty(key,value);
|
||||
}else{
|
||||
con.setRequestProperty(key,value);
|
||||
|
@ -1413,14 +1413,14 @@ public class HttpClientHelper {
|
|||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送delete请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (osw != null) {
|
||||
try {
|
||||
osw.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送delete请求后关闭osw流出现异常,请检查!", e);
|
||||
osw = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -1434,7 +1434,7 @@ public class HttpClientHelper {
|
|||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpURLConnection发送delete请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
|
@ -1469,7 +1469,7 @@ public class HttpClientHelper {
|
|||
int responsecode=ppt.getIsResponseCode();
|
||||
|
||||
StringBuffer resultBuffer = null;
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
CloseableHttpClient httpclient=iniHttpClient(urlParam,cerpath);
|
||||
HttpPut httpput = new HttpPut(urlParam);
|
||||
httpput.setHeader("Content-Type", "application/json");
|
||||
|
@ -1482,11 +1482,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTP头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTP头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
httpput.setHeader(key,value);
|
||||
}else{
|
||||
httpput.setHeader(key,value);
|
||||
|
@ -1497,12 +1497,12 @@ public class HttpClientHelper {
|
|||
try {
|
||||
if(params.size()>0){
|
||||
if(1==params.size()&¶ms.containsKey("_forTextJson")){
|
||||
LogUtil.APP.info("参数类型:TEXT,设置HTTPClientPutJson参数信息...【"+params.get("_forTextJson").toString()+"】");
|
||||
LogUtil.APP.info("参数类型:TEXT,设置HTTPClientPutJson参数信息...【{}】",params.get("_forTextJson").toString());
|
||||
StringEntity entity = new StringEntity(params.get("_forTextJson").toString(),charset);
|
||||
httpput.setEntity(entity);
|
||||
}else{
|
||||
String jsonString = JSON.toJSONString(params);
|
||||
LogUtil.APP.info("参数类型:FORM,设置HTTPClientPutJson参数信息...【"+jsonString+"】");
|
||||
LogUtil.APP.info("参数类型:FORM,设置HTTPClientPutJson参数信息...【{}】",jsonString);
|
||||
StringEntity entity = new StringEntity(jsonString,charset);
|
||||
httpput.setEntity(entity);
|
||||
}
|
||||
|
@ -1532,14 +1532,14 @@ public class HttpClientHelper {
|
|||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送put请求(参数JSON格式)出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送put请求(参数JSON格式)后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -1567,7 +1567,7 @@ public class HttpClientHelper {
|
|||
int responsecode=ppt.getIsResponseCode();
|
||||
|
||||
StringBuffer resultBuffer = null;
|
||||
LogUtil.APP.info("设置HTTP请求地址:【"+urlParam+"】");
|
||||
LogUtil.APP.info("设置HTTP请求地址:【{}】",urlParam);
|
||||
CloseableHttpClient httpclient=iniHttpClient(urlParam,cerpath);
|
||||
HttpPut httpput = new HttpPut(urlParam);
|
||||
RequestConfig requestConfig = RequestConfig.custom()
|
||||
|
@ -1579,11 +1579,11 @@ public class HttpClientHelper {
|
|||
for (Map.Entry<String, String> m :headmsg.entrySet()) {
|
||||
String key=m.getKey();
|
||||
String value=m.getValue();
|
||||
LogUtil.APP.info("开始设置|替换HTTP头域信息...key:【"+key+"】 value:【"+value+"】");
|
||||
LogUtil.APP.info("开始设置|替换HTTP头域信息...key:【{}】 value:【{}】",key,value);
|
||||
if(null!=value&&value.indexOf("Base64(")==0){
|
||||
String valuesub=value.substring(value.indexOf("Base64(")+7,value.lastIndexOf(")"));
|
||||
value="Basic " + DatatypeConverter.printBase64Binary((valuesub).getBytes());
|
||||
LogUtil.APP.info("将头域【"+key+"】的值【"+value+"】FORMAT成BASE64格式...");
|
||||
LogUtil.APP.info("将头域【{}】的值【{}】FORMAT成BASE64格式...",key,value);
|
||||
httpput.setHeader(key,value);
|
||||
}else{
|
||||
httpput.setHeader(key,value);
|
||||
|
@ -1601,7 +1601,7 @@ public class HttpClientHelper {
|
|||
List <NameValuePair> nvps = new ArrayList <NameValuePair>();
|
||||
for (Map.Entry<String, Object> m :params.entrySet()) {
|
||||
nvps.add(new BasicNameValuePair(m.getKey(), m.getValue().toString()));
|
||||
LogUtil.APP.info("开始设置HTTPClientPut参数信息...key:【"+m.getKey()+"】 value:【"+m.getValue()+"】");
|
||||
LogUtil.APP.info("开始设置HTTPClientPut参数信息...key:【{}】 value:【{}】",m.getKey(),m.getValue());
|
||||
}
|
||||
httpput.setEntity(new UrlEncodedFormEntity(nvps,charset));
|
||||
}
|
||||
|
@ -1631,14 +1631,14 @@ public class HttpClientHelper {
|
|||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送put请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("使用HttpClient发送put请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -1657,7 +1657,7 @@ public class HttpClientHelper {
|
|||
SSLContext sslContext = null;
|
||||
FileInputStream instream = null;
|
||||
KeyStore trustStore = null;
|
||||
LogUtil.APP.info("证书路径:"+keyStorePath+" 密钥:"+keyStorepass);
|
||||
LogUtil.APP.info("证书路径:{} 密钥:{}",keyStorePath,keyStorepass);
|
||||
try {
|
||||
trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
|
||||
LogUtil.APP.info("开始读取证书文件流...");
|
||||
|
@ -1674,12 +1674,12 @@ public class HttpClientHelper {
|
|||
sslContext = SSLContext.getInstance("SSL", "SunJSSE");
|
||||
sslContext.init(null, tms, new java.security.SecureRandom());
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("设置信任自签名证书出现异常,请检查!", e);
|
||||
} finally {
|
||||
try {
|
||||
instream.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("设置信任自签名证书后关闭instream流出现异常,请检查!", e);
|
||||
}
|
||||
}
|
||||
return sslContext;
|
||||
|
|
|
@ -62,14 +62,14 @@ public class HttpRequest {
|
|||
resultBuffer.append(temp);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("loadJSON发送请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
try {
|
||||
br.close();
|
||||
} catch (IOException e) {
|
||||
LogUtil.APP.error(e.getMessage(), e);
|
||||
LogUtil.APP.error("loadJSON发送请求后关闭br流出现异常,请检查!", e);
|
||||
br = null;
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
|
@ -116,8 +116,7 @@ public class HttpRequest {
|
|||
result += line;
|
||||
}
|
||||
} catch (Exception e) {
|
||||
System.out.println("发送 POST 请求出现异常!"+e);
|
||||
e.printStackTrace();
|
||||
LogUtil.APP.error("向指定URL发送POST方法的请求出现异常,请检查!", e);
|
||||
}
|
||||
//使用finally块来关闭输出流、输入流
|
||||
finally{
|
||||
|
@ -130,7 +129,7 @@ public class HttpRequest {
|
|||
}
|
||||
}
|
||||
catch(IOException ex){
|
||||
ex.printStackTrace();
|
||||
LogUtil.APP.error("向指定URL发送POST方法的请求后关闭流出现异常,请检查!", ex);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
@ -175,6 +174,7 @@ public class HttpRequest {
|
|||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
LogUtil.APP.error("使用HttpClient以JSON格式发送post请求出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
if (br != null) {
|
||||
|
@ -182,16 +182,12 @@ public class HttpRequest {
|
|||
br.close();
|
||||
} catch (IOException e) {
|
||||
br = null;
|
||||
LogUtil.APP.error("使用HttpClient以JSON格式发送post请求后关闭br流出现异常,请检查!", e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
return resultBuffer.toString();
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue