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.Table;
|
||||
|
||||
import org.bench4q.share.helper.MarshalHelper;
|
||||
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
||||
|
||||
@Entity
|
||||
@Table(name = "TestPlanScriptResult")
|
||||
public class TestPlanScriptResult {
|
||||
private int id;
|
||||
private TestPlanScript testPlanScript;
|
||||
private long totalSuccessCountFromBegin;
|
||||
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 String scriptBriefResultContent;
|
||||
private Date createDatetime;
|
||||
|
||||
@Id
|
||||
|
@ -51,95 +43,13 @@ public class TestPlanScriptResult {
|
|||
this.testPlanScript = testPlanScript;
|
||||
}
|
||||
|
||||
@Column(name = "totalSuccessCountFromBegin", nullable = false)
|
||||
public long getTotalSuccessCountFromBegin() {
|
||||
return totalSuccessCountFromBegin;
|
||||
@Column(name = "scriptBriefResultContent", columnDefinition = "LONGTEXT", nullable = false)
|
||||
public String getScriptBriefResultContent() {
|
||||
return scriptBriefResultContent;
|
||||
}
|
||||
|
||||
public void setTotalSuccessCountFromBegin(long totalSuccessCountFromBegin) {
|
||||
this.totalSuccessCountFromBegin = totalSuccessCountFromBegin;
|
||||
}
|
||||
|
||||
@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;
|
||||
public void setScriptBriefResultContent(String scriptBriefResultContent) {
|
||||
this.scriptBriefResultContent = scriptBriefResultContent;
|
||||
}
|
||||
|
||||
@Column(name = "createDatetime", nullable = false)
|
||||
|
@ -151,4 +61,9 @@ public class TestPlanScriptResult {
|
|||
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.TestPlanScriptService;
|
||||
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.TimeSeries;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -86,10 +87,8 @@ public class ScriptReportService {
|
|||
if (results == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
addScriptSeries(results, timeSeriesList, "averageResponseTime");
|
||||
addScriptSeries(results, timeSeriesList, "maxResponseTime");
|
||||
|
||||
try {
|
||||
ReportService.writeImageIntoPdf(
|
||||
ReportService.buildChartStream(document,
|
||||
|
@ -107,10 +106,13 @@ public class ScriptReportService {
|
|||
try {
|
||||
TimeSeries timeSeries = new TimeSeries(fieldName);
|
||||
for (TestPlanScriptResult result : results) {
|
||||
Field field = result.getClass().getDeclaredField(fieldName);
|
||||
ScriptBriefResultModel scriptBriefResultModel = result
|
||||
.extractScriptBriefResultModel();
|
||||
Field field = scriptBriefResultModel.getClass()
|
||||
.getDeclaredField(fieldName);
|
||||
field.setAccessible(true);
|
||||
timeSeries.addOrUpdate(new Second(result.getCreateDatetime()),
|
||||
field.getLong(result));
|
||||
field.getLong(scriptBriefResultModel));
|
||||
}
|
||||
timeSeriesList.add(timeSeries);
|
||||
} 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.TestPlanScriptResult;
|
||||
import org.bench4q.master.helper.SessionHelper;
|
||||
import org.bench4q.share.helper.MarshalHelper;
|
||||
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
||||
import org.hibernate.Session;
|
||||
import org.hibernate.Transaction;
|
||||
|
@ -128,21 +129,8 @@ public class TestPlanScriptService {
|
|||
Date createDatetime) {
|
||||
TestPlanScriptResult result = new TestPlanScriptResult();
|
||||
result.setTestPlanScript(testPlanScript);
|
||||
result.setAverageElapsedTime(model.getAverageElapsedTime());
|
||||
|
||||
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.setScriptBriefResultContent(MarshalHelper.marshal(
|
||||
ScriptBriefResultModel.class, model));
|
||||
result.setCreateDatetime(createDatetime);
|
||||
return result;
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@ import java.util.UUID;
|
|||
import org.bench4q.master.entity.db.TestPlanScript;
|
||||
import org.bench4q.master.entity.db.TestPlanScriptResult;
|
||||
import org.bench4q.master.service.db.TestPlanScriptService;
|
||||
import org.bench4q.share.models.master.ScriptBriefResultModel;
|
||||
import org.junit.Test;
|
||||
|
||||
public class TestTestPlanScriptService {
|
||||
|
@ -38,4 +39,16 @@ public class TestTestPlanScriptService {
|
|||
testPlanScript);
|
||||
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