refactor the TestPlanScriptResult to save the marshal
scriptBriefResultMOdel
This commit is contained in:
parent
916a614558
commit
5c262b239b
|
@ -11,23 +11,15 @@ import javax.persistence.JoinColumn;
|
||||||
import javax.persistence.ManyToOne;
|
import javax.persistence.ManyToOne;
|
||||||
import javax.persistence.Table;
|
import javax.persistence.Table;
|
||||||
|
|
||||||
|
import org.bench4q.share.helper.MarshalHelper;
|
||||||
|
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
||||||
|
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "TestPlanScriptResult")
|
@Table(name = "TestPlanScriptResult")
|
||||||
public class TestPlanScriptResult {
|
public class TestPlanScriptResult {
|
||||||
private int id;
|
private int id;
|
||||||
private TestPlanScript testPlanScript;
|
private TestPlanScript testPlanScript;
|
||||||
private long totalSuccessCountFromBegin;
|
private String scriptBriefResultContent;
|
||||||
private long totalFailCountFromBegin;
|
|
||||||
|
|
||||||
private long averageResponseTime;
|
|
||||||
private long maxResponseTime;
|
|
||||||
private long minResposneTime;
|
|
||||||
private long successThroughputThisTime;
|
|
||||||
private long failThroughputThisTime;
|
|
||||||
private long responseTimeDeviationThisTime;
|
|
||||||
private long failRateThisTime;
|
|
||||||
|
|
||||||
private long averageElapsedTime;
|
|
||||||
private Date createDatetime;
|
private Date createDatetime;
|
||||||
|
|
||||||
@Id
|
@Id
|
||||||
|
@ -51,95 +43,13 @@ public class TestPlanScriptResult {
|
||||||
this.testPlanScript = testPlanScript;
|
this.testPlanScript = testPlanScript;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Column(name = "totalSuccessCountFromBegin", nullable = false)
|
@Column(name = "scriptBriefResultContent", columnDefinition = "LONGTEXT", nullable = false)
|
||||||
public long getTotalSuccessCountFromBegin() {
|
public String getScriptBriefResultContent() {
|
||||||
return totalSuccessCountFromBegin;
|
return scriptBriefResultContent;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setTotalSuccessCountFromBegin(long totalSuccessCountFromBegin) {
|
public void setScriptBriefResultContent(String scriptBriefResultContent) {
|
||||||
this.totalSuccessCountFromBegin = totalSuccessCountFromBegin;
|
this.scriptBriefResultContent = scriptBriefResultContent;
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "totalFailCountFromBegin", nullable = false)
|
|
||||||
public long getTotalFailCountFromBegin() {
|
|
||||||
return totalFailCountFromBegin;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTotalFailCountFromBegin(long totalFailCountFromBegin) {
|
|
||||||
this.totalFailCountFromBegin = totalFailCountFromBegin;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "averageResponseTime", nullable = false)
|
|
||||||
public long getAverageResponseTime() {
|
|
||||||
return averageResponseTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAverageResponseTime(long averageResponseTime) {
|
|
||||||
this.averageResponseTime = averageResponseTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "maxResponseTime", nullable = false)
|
|
||||||
public long getMaxResponseTime() {
|
|
||||||
return maxResponseTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMaxResponseTime(long maxResponseTime) {
|
|
||||||
this.maxResponseTime = maxResponseTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "minResposneTime", nullable = false)
|
|
||||||
public long getMinResposneTime() {
|
|
||||||
return minResposneTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setMinResposneTime(long minResposneTime) {
|
|
||||||
this.minResposneTime = minResposneTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "successThroughputThisTime", nullable = false)
|
|
||||||
public long getSuccessThroughputThisTime() {
|
|
||||||
return successThroughputThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSuccessThroughputThisTime(long successThroughputThisTime) {
|
|
||||||
this.successThroughputThisTime = successThroughputThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "failThroughputThisTime", nullable = false)
|
|
||||||
public long getFailThroughputThisTime() {
|
|
||||||
return failThroughputThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFailThroughputThisTime(long failThroughputThisTime) {
|
|
||||||
this.failThroughputThisTime = failThroughputThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "responseTimeDeviationThisTime", nullable = false)
|
|
||||||
public long getResponseTimeDeviationThisTime() {
|
|
||||||
return responseTimeDeviationThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setResponseTimeDeviationThisTime(
|
|
||||||
long responseTimeDeviationThisTime) {
|
|
||||||
this.responseTimeDeviationThisTime = responseTimeDeviationThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "failRateThisTime", nullable = false)
|
|
||||||
public long getFailRateThisTime() {
|
|
||||||
return failRateThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setFailRateThisTime(long failRateThisTime) {
|
|
||||||
this.failRateThisTime = failRateThisTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Column(name = "averageElapsedTime", nullable = false)
|
|
||||||
public long getAverageElapsedTime() {
|
|
||||||
return averageElapsedTime;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setAverageElapsedTime(long averageElapsedTime) {
|
|
||||||
this.averageElapsedTime = averageElapsedTime;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Column(name = "createDatetime", nullable = false)
|
@Column(name = "createDatetime", nullable = false)
|
||||||
|
@ -151,4 +61,9 @@ public class TestPlanScriptResult {
|
||||||
this.createDatetime = createDatetime;
|
this.createDatetime = createDatetime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ScriptBriefResultModel extractScriptBriefResultModel() {
|
||||||
|
return (ScriptBriefResultModel) MarshalHelper.unmarshal(
|
||||||
|
ScriptBriefResultModel.class,
|
||||||
|
this.getScriptBriefResultContent());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,6 +11,7 @@ import org.bench4q.master.entity.db.TestPlanScriptResult;
|
||||||
import org.bench4q.master.service.db.MonitorResultService;
|
import org.bench4q.master.service.db.MonitorResultService;
|
||||||
import org.bench4q.master.service.db.TestPlanScriptService;
|
import org.bench4q.master.service.db.TestPlanScriptService;
|
||||||
import org.bench4q.master.service.db.TestPlanService;
|
import org.bench4q.master.service.db.TestPlanService;
|
||||||
|
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
||||||
import org.jfree.data.time.Second;
|
import org.jfree.data.time.Second;
|
||||||
import org.jfree.data.time.TimeSeries;
|
import org.jfree.data.time.TimeSeries;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -86,10 +87,8 @@ public class ScriptReportService {
|
||||||
if (results == null) {
|
if (results == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
addScriptSeries(results, timeSeriesList, "averageResponseTime");
|
addScriptSeries(results, timeSeriesList, "averageResponseTime");
|
||||||
addScriptSeries(results, timeSeriesList, "maxResponseTime");
|
addScriptSeries(results, timeSeriesList, "maxResponseTime");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
ReportService.writeImageIntoPdf(
|
ReportService.writeImageIntoPdf(
|
||||||
ReportService.buildChartStream(document,
|
ReportService.buildChartStream(document,
|
||||||
|
@ -107,10 +106,13 @@ public class ScriptReportService {
|
||||||
try {
|
try {
|
||||||
TimeSeries timeSeries = new TimeSeries(fieldName);
|
TimeSeries timeSeries = new TimeSeries(fieldName);
|
||||||
for (TestPlanScriptResult result : results) {
|
for (TestPlanScriptResult result : results) {
|
||||||
Field field = result.getClass().getDeclaredField(fieldName);
|
ScriptBriefResultModel scriptBriefResultModel = result
|
||||||
|
.extractScriptBriefResultModel();
|
||||||
|
Field field = scriptBriefResultModel.getClass()
|
||||||
|
.getDeclaredField(fieldName);
|
||||||
field.setAccessible(true);
|
field.setAccessible(true);
|
||||||
timeSeries.addOrUpdate(new Second(result.getCreateDatetime()),
|
timeSeries.addOrUpdate(new Second(result.getCreateDatetime()),
|
||||||
field.getLong(result));
|
field.getLong(scriptBriefResultModel));
|
||||||
}
|
}
|
||||||
timeSeriesList.add(timeSeries);
|
timeSeriesList.add(timeSeries);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|
|
@ -11,6 +11,7 @@ import org.bench4q.master.entity.db.TestPlanDB;
|
||||||
import org.bench4q.master.entity.db.TestPlanScript;
|
import org.bench4q.master.entity.db.TestPlanScript;
|
||||||
import org.bench4q.master.entity.db.TestPlanScriptResult;
|
import org.bench4q.master.entity.db.TestPlanScriptResult;
|
||||||
import org.bench4q.master.helper.SessionHelper;
|
import org.bench4q.master.helper.SessionHelper;
|
||||||
|
import org.bench4q.share.helper.MarshalHelper;
|
||||||
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
||||||
import org.hibernate.Session;
|
import org.hibernate.Session;
|
||||||
import org.hibernate.Transaction;
|
import org.hibernate.Transaction;
|
||||||
|
@ -128,21 +129,8 @@ public class TestPlanScriptService {
|
||||||
Date createDatetime) {
|
Date createDatetime) {
|
||||||
TestPlanScriptResult result = new TestPlanScriptResult();
|
TestPlanScriptResult result = new TestPlanScriptResult();
|
||||||
result.setTestPlanScript(testPlanScript);
|
result.setTestPlanScript(testPlanScript);
|
||||||
result.setAverageElapsedTime(model.getAverageElapsedTime());
|
result.setScriptBriefResultContent(MarshalHelper.marshal(
|
||||||
|
ScriptBriefResultModel.class, model));
|
||||||
result.setAverageResponseTime(model.getAverageResponseTime());
|
|
||||||
result.setFailRateThisTime(model.getFailRateThisTime());
|
|
||||||
result.setFailThroughputThisTime(model.getFailThroughputThisTime());
|
|
||||||
result.setMaxResponseTime(model.getMaxResponseTime());
|
|
||||||
result.setMinResposneTime(model.getMinResponseTime());
|
|
||||||
result.setResponseTimeDeviationThisTime(model
|
|
||||||
.getResponseTimeDeviationThisTime());
|
|
||||||
result.setSuccessThroughputThisTime(model
|
|
||||||
.getSuccessThroughputThisTime());
|
|
||||||
result.setTotalFailCountFromBegin(model.getTotalFailCountFromBegin());
|
|
||||||
result.setTotalSuccessCountFromBegin(model
|
|
||||||
.getTotalSuccessCountFromBegin());
|
|
||||||
|
|
||||||
result.setCreateDatetime(createDatetime);
|
result.setCreateDatetime(createDatetime);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,6 +8,7 @@ import java.util.UUID;
|
||||||
import org.bench4q.master.entity.db.TestPlanScript;
|
import org.bench4q.master.entity.db.TestPlanScript;
|
||||||
import org.bench4q.master.entity.db.TestPlanScriptResult;
|
import org.bench4q.master.entity.db.TestPlanScriptResult;
|
||||||
import org.bench4q.master.service.db.TestPlanScriptService;
|
import org.bench4q.master.service.db.TestPlanScriptService;
|
||||||
|
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
public class TestTestPlanScriptService {
|
public class TestTestPlanScriptService {
|
||||||
|
@ -38,4 +39,16 @@ public class TestTestPlanScriptService {
|
||||||
testPlanScript);
|
testPlanScript);
|
||||||
assertTrue(scriptBriefResultModels.size() > 0);
|
assertTrue(scriptBriefResultModels.size() > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testSaveScriptBriefResult() {
|
||||||
|
ScriptBriefResultModel briefResultModel = new ScriptBriefResultModel();
|
||||||
|
briefResultModel.setAverageElapsedTime(100);
|
||||||
|
briefResultModel.setAverageResponseTime(100);
|
||||||
|
briefResultModel.setFailRateThisTime(0);
|
||||||
|
briefResultModel.setFailThroughputThisTime(0);
|
||||||
|
briefResultModel.setFinished(true);
|
||||||
|
this.getTestPlanScriptService().saveResult(
|
||||||
|
UUID.fromString(TEST_PLAN_RUN_ID), SCRIPT_ID, briefResultModel);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue