如果嵌入的表达式被点和下划线包围,则不会替换

时间:2018-10-29 11:44:36

标签: karate

按以下方式添加,添加前缀或用字符包围时,嵌入式表达式不会被替换

* def RADName = 'IntegrationFirstRAD'
* def tenantID = '1452119626'

* def out = 
        """
       {
    "nsName": "fld_<tenantID>_stage00.rad.<RADName>_.resources:<RADName>_resource"
       }
        """
* print out

执行该方案将返回:

"nsName":"fld_1452119626_stage00.rad.<RADName>_.resources:<RADName>_resource

在上述情况下,“ RADName”未替换为值

1 个答案:

答案 0 :(得分:2)

请使用replace关键字:

* def out = { nsName: 'fld_<tenantID>_stage00.rad.<RADName>_.resources:<RADName>_resource' }
* replace out.RADName = 'IntegrationFirstRAD'
* replace out.tenantID = '1452119626'
* match out == { "nsName": "fld_1452119626_stage00.rad.IntegrationFirstRAD_.resources:IntegrationFirstRAD_resource" }

您似乎对embedded expressionsScenario Outlines感到困惑。

我想值得再说一遍,您确实真的应该完整阅读一次文档。