问题描述
我的Cucumber Java步骤定义可以创建AutoCloseable
对象,该对象可以获取外部(也许是稀缺的)资源。不再需要这些对象时,应调用它们的close()
方法,以释放这些资源。如何确保调用close()
方法?
在非黄瓜测试中,我将使用try-with-resources。但这是不可能的,因为没有跨场景执行的单一方法(AutoCloseable
对象可能在 when 方法中创建,并在以后的 then中使用)。
解决方法
一个选择是使用带有io.cucumber.java.After
注释的方法来调用close()
方法。不好我们必须依靠Cucmber而不是Java Itelf来做正确的事情。