Aop @aspept не запускается в @springboottestJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Aop @aspept не запускается в @springboottest

Сообщение Anonymous »

Я использую Spring-Boot 3.4.2.
Я хочу использовать аспекты AOP, чтобы изменить аннотации, которые я использую в тесте Spring Boot. < Br /> Однако мой метод @Around не запускается во время выполнения теста.
Если я аннотирую, например, Метод конечной точки внутри контроллера REST, чем он запускается. Но я хочу использовать его для тестов. < /P>
Вот моя аннотация: < /p>

Код: Выделить всё

@Target({ ElementType.METHOD, ElementType.TYPE })
@Retention(RetentionPolicy.RUNTIME)
public @interface TestAnnotation {
}
< /code>
Вот мой аспект: < /p>
@Aspect
@Component
public class TestAspect {
public TestAspect() {
// this is called - so @Component works
System.out.println("aspect constructor called");
}

@Around("@annotation(TestAnnotation)")
public Object aroundAdvice(ProceedingJoinPoint joinPoint) throws Throwable {
// this is NOT called in the test - @Around did not work
System.out.println("aroundAdvice() called");
return joinPoint.proceed();
}
}
< /code>
И вот мой тест: < /p>
@SpringBootTest
@ComponentScan(basePackages = { "de.mycompany" }) // root of all my packages
@TestPropertySource(value = "classpath:application-test.yml", factory = YamlPropertySourceFactory.class)
@AutoConfigureMockMvc
class MyTestClass {

@Autowired
private MockMvc mockMvc;

@Test
@TestAnnotation
void testSomething() throws Exception {
System.out.println("testSomething() called.");
// test something with mockMvc
}
}
< /code>
Если я аннотирую конечную точку в RestController, astreadvice () < /code> будет запускается, когда эта конечная точка вызывается или проверяется. Когда мой метод испытаний (здесь: testSomeMehing () 
) вызывается. И это не работает. < /P>
Использование полностью квалифицированного класса в @Around < /code> тоже не работает:

Код: Выделить всё

@Around("@annotation(de.mycompany.annotation.TestAnnotation)")


Подробнее здесь: https://stackoverflow.com/questions/794 ... ngboottest
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Простой Spring AOP, но Aspect не запускается
    Гость » » в форуме JAVA
    0 Ответы
    49 Просмотры
    Последнее сообщение Гость
  • SpringbootApplication по умолчанию для всех SpringBootTest
    Anonymous » » в форуме JAVA
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Где я использую @ExtendsWith(MockitoExtension.class) и @SpringBootTest, кто-нибудь объяснит мне пример
    Anonymous » » в форуме JAVA
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Ошибка: java.lang.IllegalArgumentException: URI не должен быть нулевым при использовании RestAssured в SpringBootTest пр
    Anonymous » » в форуме JAVA
    0 Ответы
    39 Просмотры
    Последнее сообщение Anonymous
  • Ускорьте запуск SpringBootTest с помощью SpringRunner
    Anonymous » » в форуме JAVA
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»