在下面的代码中,可以看到变量defaultHeaders被复制到一个名为myHeaders的新变量中。现在,当改变myHeaders的值时,就是改变defaultHeaders变量的值。
这是对的吗?我是不是错过了一些最基本的东西。请解释一下。
我希望最初的defaultHeaders将保持不变,以供其他场景使用。
空手道版本: 0.9.4
Feature: test one
Background:
* def defaultHeaders = { 'app-Id' : "defaultApp" }
@ScenarioOne
Scenario: scenario one
* def myHeaders = defaultHeaders
* print myHeaders \\ prints { "app-Id": "defaultApp" }
* myHeaders["app-Id"] = 'MyNewAppId'
* print myHeaders \\ prints { "app-Id": "MyNewAppId" }
* print defaultHeaders \\ prints { "app-Id": "MyNewAppId" }
* print myHeaders \\ prints { "app-Id": "MyNewAppId" }
* def calltoSecond = call read('featureTwo.feature@ScenarioTwo') { customHeader: '#(myHeaders)'}
发布于 2020-07-22 19:54:35
请看copy关键字:https://github.com/intuit/karate#type-copy
* copy myHeaders = defaultHeadershttps://stackoverflow.com/questions/63041146
复制相似问题