JUnit 5 扩展的配置

Configuration of a JUnit 5 extension

我正在将基于 JUnit 4 的内部工具升级到 JUnit 5。因此我必须为测试执行编写一个扩展。扩展的任务应该是确保外部应用程序的正确状态(如果不是 运行ning 等,则启动它)。要执行此任务,需要几个参数(来自命令行)。

我可以将这些参数存储在扩展上下文中吗?如果是这样,我如何才能在实际测试 运行 开始之前访问它?

Can I store these parameters in the extension context?

可以 ,但更好的选择是将它们作为 "configuration parameters" 访问——例如,通过 org.junit.jupiter.api.extension.ExtensionContext.getConfigurationParameter(String).

And if so, how can I access it before the actual tests run starts?

您可以在 BeforeAllCallback 扩展中通过上述 ExtensionContext.getConfigurationParameter(String) 方法访问它们。

如果您希望在 all 测试 类 之前执行该自定义扩展,而无需用户明确注册该扩展,您可以让该扩展自动注册。有关详细信息,请参阅 User Guide