【问题标题】:@AfterAll hook in Unit is not executedUnit 中的 @AfterAll 钩子未执行
【发布时间】:2021-12-23 20:06:31
【问题描述】:

我在 Cucumber 框架中使用 Unit runner 有以下代码

import io.cucumber.java.After;
import org.junit.jupiter.api.AfterAll;

@AfterAll
public void foo(){
}

@After
public void bar(){
}

由于某种原因,@After 钩子被执行,但 @AfterAll 不想执行。 如何在所有测试结束后执行方法?

【问题讨论】:

  • 将您的代码发布到 github 并在此处粘贴链接。
  • 仔细阅读您的导入声明。
  • 嗨@M.P.Korstanje,我知道我的导入是错误的,但不明白什么应该是正确的,因为我没有找到“import io.cucumber.java.AfterAll;”存在吗?
  • 显示来自pom.xml的依赖项
  • 嗨@AlexeyR.,这里的评论太长了,但我已将它粘贴到我的问题中stackoverflow.com/questions/69914497/maven-dont-run-tests。希望对您有所帮助。

标签: java junit cucumber


【解决方案1】:

请从 cucumber 库中导入 Afterall 钩子,当前您已经从 junit 导入了 afterall 注释。这就是 Afterall 没有被执行的原因。

这些是语句,

import io.cucumber.java.AfterAll;
import io.cucumber.java.Before;
import io.cucumber.java.BeforeStep;
import io.cucumber.java.en.Given;
import io.cucumber.java.en.Then;

【讨论】:

  • 对不起@Jayanth,但我不明白导入应该是什么,我没有找到“import io.cucumber.java.AfterAll;”如果你指的是它。
  • 添加在上面,请使用。请执行终端->“mvn clean install”
  • 谢谢,但它说,它毕竟不能符号。也许我错过了一个依赖,但 maven 找不到合适的。
  • 请删除junit导入并重新安装maven => mvn clean install
  • 是的,我已经删除了它,但仍然收到消息,它找不到符号。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多