如何在空手道中设置场景之间的延迟?

时间:2019-09-16 12:42:09

标签: karate

我需要在场景之间设置延迟,否则API会抛出超过限制的响应代码(每秒查询)。是否可以在场景之间设置一些延迟?我不希望在其中放置任何javascript延迟,因为总之没有单线程,所以没有这样的事情。是吗?

1 个答案:

答案 0 :(得分:0)

空手道支持Java和JavaScript,并且由于JavaScript没有类似sleep的方法,因此您唯一可以做的就是将Thread Java类型加载到JS中并调用{{3} }。

此示例配置了在每种情况下都要调用的JS函数:

Feature: A test to show how to wait between each scenario

  Background: Configure the wait function
    * configure afterScenario =
        """
      function() {
        // load java type into js engine
        var Thread = Java.type('java.lang.Thread');
        Thread.sleep(5000); // sleep for 5 Seconds
      }
      """

  Scenario: First Scenario
    * print 1

  Scenario: Second Scenario
    * print 2