Я искал функцию отражения Java и узнал про шаблон прокси, используемый для написания процессоров аннотаций. Есть ли аналогичный @Before
класс аннотации процессора, написанный внутри пакета org.junit? Я попытался найти его, но не смог найти точный класс, который выполняет эту работу.Как JUnit обрабатывает аннотацию @Before
1
A
ответ
3
Это зависит от того, что вы имеете в виду. Термин «annotation processor» часто относится к плагину, который выполняется во время фазы компиляции для генерации кода на основе аннотаций. В этом случае, однако, @Before, @After и @Test аннотации могут быть тривиально обработаны во время выполнения просто путем вызова Class.getMethods() для извлечения списка методов в тестовом классе, а затем с использованием Method.getAnnotation() или Method.getDeclaredAnnotations() для проверки аннотаций на методы этого класса, чтобы найти методы с этими аннотациями.
Смежные вопросы
- 1. Как вы используете аннотацию @Before для нескольких тестовых случаев?
- 2. JUnit - Пытаясь оптимизировать инициализацию в @Before
- 3. Junit before class (non static)
- 4. Использование метода @Before в JUnit
- 5. Как обеспечить, чтобы JUnit @Before сопровождал @After
- 6. Как выполнить различные @Before в JUnit
- 7. Junit - Multiple @Before vs. one @Before разделены на методы
- 8. Выполнить код до @Before для теста JUnit
- 9. Что такое JUnit @Before и @Test
- 10. JUnit с помощью @Before над @BeforeClass
- 11. Параметр JUnit в @Rule @Before и @After
- 12. Junit @Before не работает должным образом
- 13. Junit @Before аннотация дает исключение Nullpointer
- 14. Создайте собственную аннотацию @Test для JUnit
- 15. JUnit @Before и @ После выполнения до и после каждого теста
- 16. Junit Игнорирует аннотацию @Transactional в сервисах
- 17. Как рассказать разницу между JUnit @Before и тестом
- 18. Как распечатать содержимое массива в `@ Parameters` аннотацию в JUnit
- 19. Как вызвать метод в разделе @Before аннотации
- 20. JUnit 4.x: почему @Before никогда не исполнялся?
- 21. Стоп JUnit тест в методе @Before без сбоев
- 22. Css псевдоэлемент :: before (2); : before and :: before
- 23. Подключить пользовательскую аннотацию к тестеру JUnit в Maven
- 24. Получить имя исполняемого @Test метода в @Before в JUNIT
- 25. Запустите все тестовые примеры и проигнорируйте аннотацию @ignore в junit
- 26. JavaPoet: как построить аннотацию в аннотацию
- 27. Получить в настоящее время метод @Test в @Before в JUnit 4
- 28. Junit, Testing, Flyway: Можете ли вы объединить аннотации @Before и @Flyway?
- 29. before (: each) vs just before
- 30. Как временно отключить тест Junit?
Да, это правильно, но какой класс в рамках JUnit делает это? –
TestClass.getTestMethods() делает это: https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/internal/runners/TestClass.java –