mirror of
https://github.com/httprunner/httprunner.git
synced 2026-09-05 07:26:55 +08:00
feat: data-driven.
This commit is contained in:
@@ -46,15 +46,12 @@ func (b *hrpBoomer) Run(testcases ...ITestCase) {
|
||||
panic(err)
|
||||
}
|
||||
cfg := testcase.Config.ToStruct()
|
||||
parameters := getParameters(testcase.Config)
|
||||
if parameters == nil {
|
||||
parameters = []map[string]interface{}{{}}
|
||||
}
|
||||
for _, parameter := range parameters {
|
||||
cfg.Variables = mergeVariables(parameter, cfg.Variables)
|
||||
task := b.convertBoomerTask(testcase)
|
||||
taskSlice = append(taskSlice, task)
|
||||
err = initParameterIterator(cfg, "boomer")
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
task := b.convertBoomerTask(testcase)
|
||||
taskSlice = append(taskSlice, task)
|
||||
}
|
||||
b.Boomer.Run(taskSlice...)
|
||||
}
|
||||
@@ -71,6 +68,10 @@ func (b *hrpBoomer) convertBoomerTask(testcase *TestCase) *boomer.Task {
|
||||
testcaseSuccess := true // flag whole testcase result
|
||||
var transactionSuccess = true // flag current transaction result
|
||||
|
||||
cfg := testcase.Config.ToStruct()
|
||||
if it := cfg.ParameterIterator; it.HasNext() {
|
||||
cfg.Variables = mergeVariables(it.Next(), cfg.Variables)
|
||||
}
|
||||
startTime := time.Now()
|
||||
for index, step := range testcase.TestSteps {
|
||||
stepData, err := runner.runStep(index)
|
||||
|
||||
Reference in New Issue
Block a user