change: parseStepStruct for boomer

This commit is contained in:
lilong.129
2024-08-21 16:28:22 +08:00
parent fc01cfe0cc
commit f6ece2e95f
3 changed files with 8 additions and 7 deletions

View File

@@ -356,20 +356,19 @@ func (b *HRPBoomer) convertBoomerTask(testcase *TestCase, rendezvousList []*Rend
startTime := time.Now()
for _, step := range testcase.TestSteps {
// TODO: parse step struct
// parse step name
parsedName, err := caseRunner.parser.ParseString(step.Name(), sessionRunner.sessionVariables)
// parse step struct
err = sessionRunner.parseStepStruct(step)
if err != nil {
parsedName = step.Name()
log.Error().Err(err).Msg("parse step struct failed")
}
stepName := convertString(parsedName)
// reset start time only once before step
once.Do(func() {
b.Boomer.ResetStartTime()
})
stepResult, err := step.Run(sessionRunner)
// update step result name with parsed step name
stepResult.Name = stepName
stepResult.Name = step.Name()
// record requests result of the step if step type is testcase
if stepResult.StepType == stepTypeTestCase && stepResult.Data != nil {
// record requests of testcase step

View File

@@ -451,6 +451,9 @@ func (r *SessionRunner) Start(givenVars map[string]interface{}) (summary *TestCa
r.initWithParameters(givenVars)
defer func() {
// release session resources
r.releaseResources()
summary = r.summary
summary.Name = r.caseRunner.Config.Name
summary.Time.Duration = time.Since(summary.Time.StartAt).Seconds()

View File

@@ -690,7 +690,6 @@ func getContentSize(resp interface{}) int64 {
}
}
// releaseResources releases resources used by session runner
func (r *SessionRunner) releaseResources() {
// close websocket connections
for _, wsConn := range r.ws.wsConnMap {