Errori di unit test dopo l’aggiornamento ad AEM SDK 2026.9.28386
✨ Il contenuto è generato tramite IA e potrebbe non essere accurato. Termini di IA generativi
Questo articolo spiega come risolvere gli errori diffusi degli unit test nelle build Maven locali dopo l’aggiornamento a Adobe Experience Manager (AEM) SDK 2026.9.28386, causati da modifiche nelle dipendenze di base e di test.
Descrizione description
Ambiente
- Adobe Experience Manager (AEM) SDK 2026.9.28386 (aggiornamento da 2026.8.27830)
Sintomi
- Dopo l’aggiornamento di AEM SDK, le build Maven locali non superano un numero elevato di unit test precedentemente superati.
- Gli errori si verificano principalmente durante l’esecuzione dell’obiettivo
maven-surefire-plugin:test. - Gli errori includono:
- Eccezioni impreviste come
java.lang.reflect.InvocationTargetException NoClassDefFoundError,NoSuchMethodErroroNoSuchFieldError- Errori di runtime durante l’inizializzazione della factory del risolutore risorse Mock JCR
- Errori di test relativi a classi, metodi o campi mancanti o incompatibili (ad esempio, Log4j, Sling Mock, JCR Mock)
- Gli unit test che si basano su JCR Mock, Sling Mock, Log4j o dipendenze di test correlate non consentono di inizializzare o generare errori di runtime.
Causa
L’aggiornamento AEM SDK 2026.9.28386 ha introdotto modifiche alle dipendenze di base e di test, causando incompatibilità con versioni precedenti di JCR Mock, Sling Mock, Log4j o librerie correlate utilizzate negli unit test.
Risoluzione resolution
Per risolvere il problema, segui la procedura riportata di seguito.
- Consulta le note sulla versione di AEM SDK per la versione 2026.9.28386 per eventuali modifiche documentate alle librerie di base o alle dipendenze di test.
- Aggiorna le dipendenze dei test del progetto (ad esempio
io.wcm.testing.mock.aem,org.apache.sling.testing.sling-mockeorg.apache.logging.log4j) alle versioni compatibili con AEM SDK aggiornato. Per le versioni consigliate, fai riferimento a Archetipo AEM. - Aggiorna le versioni di queste dipendenze in
pom.xmlin modo che corrispondano o superino quelle incluse nel pacchetto con il nuovo SDK. - Eseguire
mvn clean install -Uper cancellare gli artefatti memorizzati nella cache e ricompilare il progetto con le dipendenze aggiornate. - Esaminare le analisi dello stack per individuare errori quali
NoClassDefFoundError,NoSuchMethodErroroNoSuchFieldErrore aggiornare il codice di test per evitare l’utilizzo di API obsolete o rimosse. Eseguire il refactoring dei test in base alle esigenze. - Assicurati che la versione Log4j utilizzata nei test sia compatibile con SDK e allinea le dipendenze di registrazione in base alle esigenze.
- Eseguire nuovamente gli unit test con
mvn testper verificare che vengano passati con le dipendenze aggiornate.
recommendation-more-help
experience-cloud-kcs-help-kbarticles