【问题标题】:Can we add more than one statement in an 'If' statement in Karate? [duplicate]我们可以在空手道的“If”语句中添加多个语句吗? [复制]
【发布时间】:2020-10-15 05:48:04
【问题描述】:

如果条件为真,我想执行超过 1 条语句。我想知道它是否以及如何在 Intuit Karate 框架中实现。

在空手道文档中,我找到了像下面这样的示例,如果满足下面列出的 If 条件,则所有这些示例都只有一个要执行的语句。

if (env == 'dev') karate.configure("ssl", true)

if (responseStatus == 200) karate.call('delete-user.feature')

if (responseStatus == 404) karate.abort()

我想实现如下所示(只是我的要求的伪代码表示,而不是实际的空手道语法)

如果(响应状态 ==200)

#语句 1

#语句 2

#语句 3

#如果结束

谢谢!

【问题讨论】:

    标签: karate


    【解决方案1】:

    通常好的测试不应该这样做。请确保您也阅读此内容:https://stackoverflow.com/a/54126724/143475

    但这里有两种可能的模式:

    a) 使用第二个功能文件:

    * if (condition) karate.call('second.feature')
    

    b) 使用一个函数,缺点是只有JS API,不支持match之类的东西

    * def fun = 
    """
    function() {
      // line 1
      // line 2
    }
    """
    * if (condition) fun()
    

    【讨论】:

    • @GautamDas 我对细节并不感兴趣,我认为我的回答为您提供了您需要的所有信息。如果您有任何不明白的具体问题,请提出一个新问题
    • @GautamDas 也读到了这个:stackoverflow.com/help/someone-answers
    猜你喜欢
    • 1970-01-01
    • 2019-07-23
    • 1970-01-01
    • 1970-01-01
    • 2015-07-23
    • 1970-01-01
    • 2016-04-12
    • 2019-04-25
    • 1970-01-01
    相关资源
    最近更新 更多