mirror of
https://gitee.com/fit2cloud-feizhiyun/MeterSphere.git
synced 2024-12-02 12:09:13 +08:00
refactor(性能测试): 修改性能测试报告页面报错的弹框
--bug=1010368 --user=刘瑞斌 [性能测试] github#10684性能执行过程中,执行时长,开始时间显示异常 https://www.tapd.cn/55049933/s/1108562 Closes #10684
This commit is contained in:
parent
09ed637881
commit
15f4fa13d6
@ -43,7 +43,10 @@ import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
@ -173,31 +176,41 @@ public class PerformanceReportService {
|
||||
}
|
||||
|
||||
public List<Statistics> getReportStatistics(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String reportValue = getContent(id, ReportKeys.RequestStatistics);
|
||||
return JSON.parseArray(reportValue, Statistics.class);
|
||||
}
|
||||
|
||||
public List<Errors> getReportErrors(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.Errors);
|
||||
return JSON.parseArray(content, Errors.class);
|
||||
}
|
||||
|
||||
public List<ErrorsTop5> getReportErrorsTOP5(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.ErrorsTop5);
|
||||
return JSON.parseArray(content, ErrorsTop5.class);
|
||||
}
|
||||
|
||||
public TestOverview getTestOverview(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return new TestOverview();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.Overview);
|
||||
return JSON.parseObject(content, TestOverview.class);
|
||||
}
|
||||
|
||||
public ReportTimeInfo getReportTimeInfo(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return new ReportTimeInfo();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.TimeInfo);
|
||||
try {
|
||||
return JSON.parseObject(content, ReportTimeInfo.class);
|
||||
@ -221,26 +234,28 @@ public class PerformanceReportService {
|
||||
}
|
||||
|
||||
public List<ChartsData> getLoadChartData(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.LoadChart);
|
||||
return JSON.parseArray(content, ChartsData.class);
|
||||
}
|
||||
|
||||
public List<ChartsData> getResponseTimeChartData(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.ResponseTimeChart);
|
||||
return JSON.parseArray(content, ChartsData.class);
|
||||
}
|
||||
|
||||
public void checkReportStatus(String reportId) {
|
||||
public boolean isReportError(String reportId) {
|
||||
LoadTestReport loadTestReport = loadTestReportMapper.selectByPrimaryKey(reportId);
|
||||
String reportStatus = "";
|
||||
if (loadTestReport != null) {
|
||||
reportStatus = loadTestReport.getStatus();
|
||||
}
|
||||
if (StringUtils.equals(PerformanceTestStatus.Error.name(), reportStatus)) {
|
||||
MSException.throwException("Report generation error!");
|
||||
}
|
||||
return StringUtils.equals(PerformanceTestStatus.Error.name(), reportStatus);
|
||||
}
|
||||
|
||||
public LoadTestReportWithBLOBs getLoadTestReport(String id) {
|
||||
@ -329,13 +344,17 @@ public class PerformanceReportService {
|
||||
}
|
||||
|
||||
public List<ChartsData> getErrorChartData(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.ErrorsChart);
|
||||
return JSON.parseArray(content, ChartsData.class);
|
||||
}
|
||||
|
||||
public List<ChartsData> getResponseCodeChartData(String id) {
|
||||
checkReportStatus(id);
|
||||
if (isReportError(id)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
String content = getContent(id, ReportKeys.ResponseCodeChart);
|
||||
return JSON.parseArray(content, ChartsData.class);
|
||||
}
|
||||
@ -423,7 +442,9 @@ public class PerformanceReportService {
|
||||
}
|
||||
|
||||
public List<ChartsData> getReportChart(String reportKey, String reportId) {
|
||||
checkReportStatus(reportId);
|
||||
if (isReportError(reportId)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
try {
|
||||
String content = getContent(reportId, ReportKeys.valueOf(reportKey));
|
||||
return JSON.parseArray(content, ChartsData.class);
|
||||
|
@ -330,7 +330,7 @@ export default {
|
||||
this.$set(this.report, "refresh", e.data); // 触发刷新
|
||||
if (e.data.startsWith('Error')) {
|
||||
this.$set(this.report, "status", 'Error');
|
||||
this.$warning(e.data);
|
||||
this.$error(e.data);
|
||||
return;
|
||||
}
|
||||
this.$set(this.report, "status", 'Running');
|
||||
|
Loading…
Reference in New Issue
Block a user