Есть ли лучший способ получить экземпляр TestEngine с помощью testEngineId в JUnit 5?

#junit5

Вопрос:

Я разрабатываю TestExecutionListener , где я хотел бы получить версию TestEngine , которая выполнила этот тест (например, TestEngine версию).

В настоящее время я открываю все доступные TestEngine , используя ServiceLocator подход (аналогичный тому, что Launcher делает), и повторяю, чтобы извлечь эти расположенные движки на карту. Затем, используя testEngineId, я могу получить версию.

Я думаю, что такой подход слишком излишен, но я не смог найти ничего лучшего.

Существует ли общедоступный API для получения TestEngine экземпляра на основе testEngineId ?

Комментарии:

1. Можете ли вы описать общую идею о том, какую информацию вы хотите собрать и с какой целью? Это может помочь найти более простой способ достижения вашей цели.

2. Я хотел бы собрать версию тестового движка. Я отредактирую исходное сообщение.

3. Проверив текущий код JUnit, я думаю, используя java.util. Загрузчик услуг-это лучший подход. Если вы кэшируете загруженные движки, это не приведет к большим затратам времени выполнения, даже если вы получаете движки при каждом вызове TestExecutionListener.