通过导出用例步骤生成的Excel,再进行导入Excel用例步骤优化
This commit is contained in:
parent
097b29dd92
commit
9e8f4e34b1
|
@ -1,8 +1,10 @@
|
||||||
package com.luckyframe.project.testmanagmt.projectCase.controller;
|
package com.luckyframe.project.testmanagmt.projectCase.controller;
|
||||||
|
|
||||||
|
import com.luckyframe.common.utils.poi.ExcelUtil;
|
||||||
import com.luckyframe.project.testmanagmt.projectCase.domain.ProjectCaseSteps;
|
import com.luckyframe.project.testmanagmt.projectCase.domain.ProjectCaseSteps;
|
||||||
import com.luckyframe.project.testmanagmt.projectCase.service.IProjectCaseService;
|
import com.luckyframe.project.testmanagmt.projectCase.service.IProjectCaseService;
|
||||||
import com.luckyframe.project.testmanagmt.projectCase.service.IProjectCaseStepsService;
|
import com.luckyframe.project.testmanagmt.projectCase.service.IProjectCaseStepsService;
|
||||||
|
import com.luckyframe.project.testmanagmt.projectCaseModule.domain.ProjectCaseModule;
|
||||||
import com.luckyframe.rc.ReadTxt;
|
import com.luckyframe.rc.ReadTxt;
|
||||||
import com.luckyframe.rc.Readfile;
|
import com.luckyframe.rc.Readfile;
|
||||||
import com.luckyframe.rc.entity.ElementAction;
|
import com.luckyframe.rc.entity.ElementAction;
|
||||||
|
@ -39,65 +41,82 @@ public class RecordController {
|
||||||
* StepType默认类型 0 HTTP接口 1 Web UI 2 API驱动 3移动端
|
* StepType默认类型 0 HTTP接口 1 Web UI 2 API驱动 3移动端
|
||||||
*/
|
*/
|
||||||
@PostMapping(value = "/insert",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
|
@PostMapping(value = "/insert",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
|
||||||
public ResponseEntity insertRecord(@RequestParam("file") MultipartFile file,@RequestParam("projectId") int ProjectId,@RequestParam("caseId") int CaseId,@RequestParam("stepType") int StepType) throws IOException {
|
public ResponseEntity insertRecord(@RequestParam("file") MultipartFile file,@RequestParam("projectId") int ProjectId,@RequestParam("caseId") int CaseId,@RequestParam("stepType") int StepType) throws Exception {
|
||||||
log.info("StepType:"+StepType);
|
log.info("StepType:"+StepType);
|
||||||
if (StepType==3){
|
if (file.getOriginalFilename().toLowerCase().endsWith(".xlsx")){
|
||||||
//解析app自动化测试录制的脚本
|
ExcelUtil<ProjectCaseSteps> util = new ExcelUtil<>(ProjectCaseSteps.class);
|
||||||
ReadTxt readTxt = new ReadTxt();
|
List<ProjectCaseSteps> caseStepsList = util.importExcel(file.getInputStream());
|
||||||
List<ElementAction> stepList = readTxt.Extract(file);
|
|
||||||
for (ElementAction elementAction : stepList) {
|
|
||||||
log.info("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+ elementAction);
|
|
||||||
}
|
|
||||||
List<ProjectCaseSteps> listSteps = new ArrayList<>();
|
|
||||||
for (ElementAction elementAction : stepList) {
|
|
||||||
ProjectCaseSteps projectCaseSteps = new ProjectCaseSteps();
|
|
||||||
projectCaseSteps.setCaseId(CaseId);
|
|
||||||
projectCaseSteps.setProjectId(ProjectId);
|
|
||||||
projectCaseSteps.setStepPath(elementAction.getAccess());
|
|
||||||
projectCaseSteps.setStepParameters(elementAction.getActionValue());
|
|
||||||
projectCaseSteps.setStepOperation(elementAction.getAction());
|
|
||||||
projectCaseSteps.setStepType(StepType);
|
|
||||||
projectCaseSteps.setCreateBy("admin");
|
|
||||||
projectCaseSteps.setCreateTime(new Date());
|
|
||||||
listSteps.add(projectCaseSteps);
|
|
||||||
}
|
|
||||||
int stepSerialNumber=1;
|
|
||||||
for(ProjectCaseSteps projectCaseSteps:listSteps){
|
|
||||||
projectCaseSteps.setStepSerialNumber(stepSerialNumber);
|
|
||||||
log.info("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2"+projectCaseSteps);
|
|
||||||
projectCaseStepsService.insertProjectCaseSteps(projectCaseSteps);
|
|
||||||
stepSerialNumber++;
|
|
||||||
}
|
|
||||||
}else if(StepType==1){
|
|
||||||
//解析web自动化测试录制的脚本
|
|
||||||
Readfile Readfile = new Readfile();
|
|
||||||
LinkedList<RcWebCaseSteps> stepList = Readfile.saveAction(file);
|
|
||||||
for (RcWebCaseSteps rcWebCaseSteps : stepList) {
|
|
||||||
log.info("设置包|定位路径:"+ rcWebCaseSteps.getStepPath());
|
|
||||||
}
|
|
||||||
List<ProjectCaseSteps> listSteps = new ArrayList<>();
|
|
||||||
for (RcWebCaseSteps rcWebCaseSteps : stepList) {
|
|
||||||
ProjectCaseSteps projectCaseSteps = new ProjectCaseSteps();
|
|
||||||
projectCaseSteps.setCaseId(CaseId);
|
|
||||||
projectCaseSteps.setProjectId(ProjectId);
|
|
||||||
projectCaseSteps.setStepPath(rcWebCaseSteps.getStepPath());
|
|
||||||
projectCaseSteps.setStepParameters(rcWebCaseSteps.getStepParameters());
|
|
||||||
projectCaseSteps.setStepOperation(rcWebCaseSteps.getStepOperation());
|
|
||||||
projectCaseSteps.setStepType(StepType);
|
|
||||||
projectCaseSteps.setCreateBy("admin");
|
|
||||||
projectCaseSteps.setCreateTime(new Date());
|
|
||||||
listSteps.add(projectCaseSteps);
|
|
||||||
}
|
|
||||||
int stepSerialNumber=1;
|
int stepSerialNumber=1;
|
||||||
log.info("开始插入步骤");
|
log.info("开始插入步骤");
|
||||||
for(ProjectCaseSteps projectCaseSteps:listSteps){
|
for(ProjectCaseSteps projectCaseSteps:caseStepsList){
|
||||||
|
projectCaseSteps.setProjectId(ProjectId);
|
||||||
|
projectCaseSteps.setCaseId(CaseId);
|
||||||
projectCaseSteps.setStepSerialNumber(stepSerialNumber);
|
projectCaseSteps.setStepSerialNumber(stepSerialNumber);
|
||||||
|
projectCaseSteps.setCreateTime(new Date());
|
||||||
log.info("第"+stepSerialNumber+"步骤为:\n"+projectCaseSteps);
|
log.info("第"+stepSerialNumber+"步骤为:\n"+projectCaseSteps);
|
||||||
projectCaseStepsService.insertProjectCaseSteps(projectCaseSteps);
|
projectCaseStepsService.insertProjectCaseSteps(projectCaseSteps);
|
||||||
stepSerialNumber++;
|
stepSerialNumber++;
|
||||||
}
|
}
|
||||||
|
}else {
|
||||||
|
if (StepType==3){
|
||||||
|
//解析app自动化测试录制的脚本
|
||||||
|
ReadTxt readTxt = new ReadTxt();
|
||||||
|
List<ElementAction> stepList = readTxt.Extract(file);
|
||||||
|
for (ElementAction elementAction : stepList) {
|
||||||
|
log.info("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+ elementAction);
|
||||||
|
}
|
||||||
|
List<ProjectCaseSteps> listSteps = new ArrayList<>();
|
||||||
|
for (ElementAction elementAction : stepList) {
|
||||||
|
ProjectCaseSteps projectCaseSteps = new ProjectCaseSteps();
|
||||||
|
projectCaseSteps.setCaseId(CaseId);
|
||||||
|
projectCaseSteps.setProjectId(ProjectId);
|
||||||
|
projectCaseSteps.setStepPath(elementAction.getAccess());
|
||||||
|
projectCaseSteps.setStepParameters(elementAction.getActionValue());
|
||||||
|
projectCaseSteps.setStepOperation(elementAction.getAction());
|
||||||
|
projectCaseSteps.setStepType(StepType);
|
||||||
|
projectCaseSteps.setCreateBy("admin");
|
||||||
|
projectCaseSteps.setCreateTime(new Date());
|
||||||
|
listSteps.add(projectCaseSteps);
|
||||||
|
}
|
||||||
|
int stepSerialNumber=1;
|
||||||
|
for(ProjectCaseSteps projectCaseSteps:listSteps){
|
||||||
|
projectCaseSteps.setStepSerialNumber(stepSerialNumber);
|
||||||
|
log.info("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2"+projectCaseSteps);
|
||||||
|
projectCaseStepsService.insertProjectCaseSteps(projectCaseSteps);
|
||||||
|
stepSerialNumber++;
|
||||||
|
}
|
||||||
|
}else if(StepType==1){
|
||||||
|
//解析web自动化测试录制的脚本
|
||||||
|
Readfile Readfile = new Readfile();
|
||||||
|
LinkedList<RcWebCaseSteps> stepList = Readfile.saveAction(file);
|
||||||
|
for (RcWebCaseSteps rcWebCaseSteps : stepList) {
|
||||||
|
log.info("设置包|定位路径:"+ rcWebCaseSteps.getStepPath());
|
||||||
|
}
|
||||||
|
List<ProjectCaseSteps> listSteps = new ArrayList<>();
|
||||||
|
for (RcWebCaseSteps rcWebCaseSteps : stepList) {
|
||||||
|
ProjectCaseSteps projectCaseSteps = new ProjectCaseSteps();
|
||||||
|
projectCaseSteps.setCaseId(CaseId);
|
||||||
|
projectCaseSteps.setProjectId(ProjectId);
|
||||||
|
projectCaseSteps.setStepPath(rcWebCaseSteps.getStepPath());
|
||||||
|
projectCaseSteps.setStepParameters(rcWebCaseSteps.getStepParameters());
|
||||||
|
projectCaseSteps.setStepOperation(rcWebCaseSteps.getStepOperation());
|
||||||
|
projectCaseSteps.setStepType(StepType);
|
||||||
|
projectCaseSteps.setCreateBy("admin");
|
||||||
|
projectCaseSteps.setCreateTime(new Date());
|
||||||
|
listSteps.add(projectCaseSteps);
|
||||||
|
}
|
||||||
|
int stepSerialNumber=1;
|
||||||
|
log.info("开始插入步骤");
|
||||||
|
for(ProjectCaseSteps projectCaseSteps:listSteps){
|
||||||
|
projectCaseSteps.setStepSerialNumber(stepSerialNumber);
|
||||||
|
log.info("第"+stepSerialNumber+"步骤为:\n"+projectCaseSteps);
|
||||||
|
projectCaseStepsService.insertProjectCaseSteps(projectCaseSteps);
|
||||||
|
stepSerialNumber++;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return ResponseEntity.ok().build();
|
return ResponseEntity.ok().build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,6 @@ public class ProjectCaseSteps extends BaseEntity
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
/** 步骤ID */
|
/** 步骤ID */
|
||||||
@Excel(name = "步骤ID")
|
|
||||||
private Integer stepId;
|
private Integer stepId;
|
||||||
/** 用例ID */
|
/** 用例ID */
|
||||||
@Excel(name = "用例ID")
|
@Excel(name = "用例ID")
|
||||||
|
|
Loading…
Reference in New Issue