Échec des tests unitaires après la mise à niveau vers AEM SDK 2026.9.28386
✨ Ce contenu est généré par l’IA et peut être inexact. Termes IA génératifs
Cet article explique comment résoudre les échecs de test unitaire généralisés dans les builds Maven locaux après la mise à niveau vers Adobe Experience Manager (AEM) SDK 2026.9.28386, qui sont causés par des modifications dans les dépendances de base et de test.
Description description
Environnement
- Adobe Experience Manager (AEM) SDK 2026.9.28386 (mise à niveau de la version 2026.8.27830)
Symptômes
- Après la mise à niveau d’AEM SDK, les versions Maven locales échouent à un grand nombre de tests unitaires qui réussissaient auparavant.
- Les échecs se produisent principalement lors de l’exécution de l’objectif
maven-surefire-plugin:test. - Les erreurs incluent :
- Exceptions inattendues telles que
java.lang.reflect.InvocationTargetException NoClassDefFoundError,NoSuchMethodErrorouNoSuchFieldError- Erreurs d’exécution lors de l’initialisation de la fabrique de résolveur de ressources du simulateur JCR
- Échecs de test liés à des classes, des méthodes ou des champs manquants ou incompatibles (par exemple, Log4j, Sling Mock, JCR Mock).
- Les tests unitaires qui reposent sur des dépendances de test JCR Mock, Sling Mock, Log4j ou d’autres tests associés ne parviennent pas à initialiser ou génèrent des erreurs d’exécution.
Cause
La mise à niveau d’AEM SDK 2026.9.28386 a introduit des modifications dans les dépendances de base et de test, entraînant des incompatibilités avec les anciennes versions de JCR Mock, Sling Mock, Log4j ou les bibliothèques associées utilisées dans les tests unitaires.
Résolution resolution
Suivez les étapes ci-dessous pour résoudre le problème.
- Consultez les Notes de mise à jour d’AEM SDK version 2026.9.28386 pour connaître tous les changements documentés apportés aux bibliothèques principales ou aux dépendances de test.
- Mettez à jour les dépendances de test de votre projet (telles que
io.wcm.testing.mock.aem,org.apache.sling.testing.sling-mocketorg.apache.logging.log4j) vers des versions compatibles avec le SDK AEM mis à niveau. Consultez la section Archétype AEM pour connaître les versions recommandées. - Mettez à jour les versions de ces dépendances dans votre
pom.xmlpour qu’elles correspondent ou dépassent celles groupées avec le nouveau SDK. - Exécutez
mvn clean install -Upour effacer les artefacts mis en cache et recréer le projet avec les dépendances mises à jour. - Vérifiez les traces de la pile pour détecter des erreurs telles que
NoClassDefFoundError,NoSuchMethodErrorouNoSuchFieldError, et mettez à jour le code de test pour éviter l’utilisation d’API obsolètes ou supprimées. Refactoriser les tests selon les besoins. - Assurez-vous que la version Log4j utilisée dans les tests est compatible avec SDK et alignez les dépendances de journalisation, le cas échéant.
- Exécutez à nouveau les tests unitaires avec
mvn testpour vérifier qu’ils réussissent désormais avec les dépendances mises à jour.
recommendation-more-help
experience-cloud-kcs-help-kbarticles