mirror of
https://github.com/httprunner/httprunner.git
synced 2026-07-08 07:51:25 +08:00
change: parseStepStruct for boomer
This commit is contained in:
@@ -356,20 +356,19 @@ func (b *HRPBoomer) convertBoomerTask(testcase *TestCase, rendezvousList []*Rend
|
|||||||
|
|
||||||
startTime := time.Now()
|
startTime := time.Now()
|
||||||
for _, step := range testcase.TestSteps {
|
for _, step := range testcase.TestSteps {
|
||||||
// TODO: parse step struct
|
// parse step struct
|
||||||
// parse step name
|
err = sessionRunner.parseStepStruct(step)
|
||||||
parsedName, err := caseRunner.parser.ParseString(step.Name(), sessionRunner.sessionVariables)
|
|
||||||
if err != nil {
|
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
|
// reset start time only once before step
|
||||||
once.Do(func() {
|
once.Do(func() {
|
||||||
b.Boomer.ResetStartTime()
|
b.Boomer.ResetStartTime()
|
||||||
})
|
})
|
||||||
stepResult, err := step.Run(sessionRunner)
|
stepResult, err := step.Run(sessionRunner)
|
||||||
// update step result name with parsed step name
|
// 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
|
// record requests result of the step if step type is testcase
|
||||||
if stepResult.StepType == stepTypeTestCase && stepResult.Data != nil {
|
if stepResult.StepType == stepTypeTestCase && stepResult.Data != nil {
|
||||||
// record requests of testcase step
|
// record requests of testcase step
|
||||||
|
|||||||
@@ -451,6 +451,9 @@ func (r *SessionRunner) Start(givenVars map[string]interface{}) (summary *TestCa
|
|||||||
r.initWithParameters(givenVars)
|
r.initWithParameters(givenVars)
|
||||||
|
|
||||||
defer func() {
|
defer func() {
|
||||||
|
// release session resources
|
||||||
|
r.releaseResources()
|
||||||
|
|
||||||
summary = r.summary
|
summary = r.summary
|
||||||
summary.Name = r.caseRunner.Config.Name
|
summary.Name = r.caseRunner.Config.Name
|
||||||
summary.Time.Duration = time.Since(summary.Time.StartAt).Seconds()
|
summary.Time.Duration = time.Since(summary.Time.StartAt).Seconds()
|
||||||
|
|||||||
@@ -690,7 +690,6 @@ func getContentSize(resp interface{}) int64 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// releaseResources releases resources used by session runner
|
|
||||||
func (r *SessionRunner) releaseResources() {
|
func (r *SessionRunner) releaseResources() {
|
||||||
// close websocket connections
|
// close websocket connections
|
||||||
for _, wsConn := range r.ws.wsConnMap {
|
for _, wsConn := range r.ws.wsConnMap {
|
||||||
|
|||||||
Reference in New Issue
Block a user