Scala黄瓜挂钩调用顺序错误

时间:2018-07-12 14:27:48

标签: scala cucumber cucumber-junit

在Scala黄瓜中,我一直在尝试一些代码,这些代码可以在运行场景之前缓存一个值,并将其与最后的值进行比较(我正在测试泄漏)。我已经删除了我的代码,但实际上这是我所拥有的:

class MyHooks {

  @Before()
  def beforeScenario(): Unit = {
    println("before scenario")
  }

  @After()
  def afterScenario(): Unit = {
    println("after scenario")
  }
}

我已将测试配置为运行一个方案,并且得到以下输出:

after scenario

  @RUNTEST
  Scenario: Dummy Scenario
    Given I have the statement
      """
        SELECT *
        FROM MY_TABLE
      """
    When I execute the statement
    Then I expect the result to contain 886 rows

1 Scenarios (1 passed)
3 Steps (3 passed)

这根本不是我所期望的,但是当我查看整个套件的输出时,它看起来像这样:

after scenario

  @RUNTEST
  Scenario: Dummy Scenario
    Given I have the statement
      """
        SELECT *
        FROM MY_TABLE
      """
    When I execute the statement
    Then I expect the result to contain 886 rows

1 Scenarios (1 passed)
3 Steps (3 passed)
0m28.835s

Feature: MyFeature
before scenario

我不确定这是只是按照怪异的顺序打印东西,还是黄瓜实际上是按错误的顺序应用了钩子?我不认为这是一个打印问题,因为当我运行所有测试时,我得到的结果是不稳定的,这对我来说表明它可能是运行混乱,并可能缓存了先前测试的结果? / p>

0 个答案:

没有答案