change: parse step variables

This commit is contained in:
debugtalk
2021-10-03 23:55:52 +08:00
parent e91e1ad8b0
commit 7fc352b26d

View File

@@ -58,9 +58,17 @@ func (r *Runner) runCase(testcase *TestCase) error {
for _, step := range testcase.TestSteps {
// override variables
// step variables > extracted variables from previous steps
step.ToStruct().Variables = mergeVariables(step.ToStruct().Variables, extractedVariables)
stepVariables := mergeVariables(step.ToStruct().Variables, extractedVariables)
// step variables > testcase config variables
step.ToStruct().Variables = mergeVariables(step.ToStruct().Variables, config.Variables)
stepVariables = mergeVariables(stepVariables, config.Variables)
// parse step variables
parsedVariables, err := parseVariables(stepVariables)
if err != nil {
log.Printf("[parseConfig] parse variables: %v, error: %v", config.Variables, err)
return err
}
step.ToStruct().Variables = parsedVariables
stepData, err := r.runStep(step, config)
if err != nil {