Introduzione functional-testing-introduction
Scopri i gate di qualità disponibili nel processo di distribuzione di AEM as a Cloud Service e i vari tipi di test funzionali incorporati. Scopri come contribuire e ottimizzarne l’utilizzo nel quadro di una strategia di test completa.
Informazioni sui test funzionali
Il diagramma seguente fornisce una panoramica di alto livello delle pipeline disponibili nel contesto di una strategia complessiva di test e del processo di distribuzione di AEM as a Cloud Service.
Scopo dei test funzionali
Lo scopo delle pipeline di distribuzione di AEM Cloud Service è facilitare distribuzioni solide e sicure in varie fasi dello sviluppo e del ciclo di vita del rilascio del prodotto AEM. Queste pipeline incorporano più gate di qualità a diversi livelli per garantire l’integrità e la sicurezza delle distribuzioni sia per le modifiche dell’applicazione AEM che per gli aggiornamenti dei prodotti AEM.
Adobe fornisce diversi gate di qualità incorporati, mentre altri richiedono il tuo intervento per l’implementazione e la configurazione. Questi gate di qualità sono versatili e si applicano in varie fasi del ciclo di vita, integrandosi direttamente nella configurazione di sviluppo e nei processi CI/CD.
I gate di qualità incorporati convalidano principalmente la funzionalità del prodotto AEM nel contesto dell’applicazione AEM. Al contrario, i gate di qualità personalizzati configurati sono progettati per verificare che le funzioni critiche e le interazioni dell’utente dell’applicazione funzionino come previsto. Collettivamente, questi due set di gate di qualità collaborano per garantire implementazioni automatizzate solide e sicure sia per le modifiche al codice che per gli aggiornamenti dei prodotti AEM.
È importante notare che questi gate di qualità non sono destinati a essere un framework di test completo per l’intera strategia di test. Il prodotto AEM è sottoposto a test approfonditi prima di entrare nel processo di implementazione del servizio cloud AEM. Allo stesso modo, l’applicazione deve essere di alta qualità prima di raggiungere la fase di distribuzione. Questo approccio garantisce che i gate di qualità si concentrino sul loro obiettivo principale di salvaguardare il processo di implementazione, anziché sostituire un regime di test completo.
Gate di qualità nel test
Il diagramma seguente fornisce una visualizzazione dettagliata dei gate di qualità disponibili e del loro utilizzo nella strategia complessiva di test e nel processo di distribuzione di AEM as a Cloud Service.
Riepilogo dei gate di qualità forniti dal cliente
personalizzati
personalizzati
Validations
manuali
Blocco
Timeout blocco
60m
Timeout blocco
30m
Blocco
Blocco
Timeout di 60m
Blocco
Timeout di 30m
Blocco
Timeout blocco
60m
Timeout blocco
30m
Test di unità
Ti invitiamo a fornire gli unit test per l’applicazione AEM, su cui si basa ogni strategia di test. Hanno lo scopo di essere veloci e frequenti e di fornire feedback rapidi e tempestivi. Sono strettamente integrati nei flussi di lavoro per sviluppatori, nel tuo CI/CD e nelle pipeline di implementazione del servizio cloud AEM.
Vengono implementati utilizzando JUnit e vengono eseguiti con Maven. Per un esempio di unit test per AEM e per una guida introduttiva, consulta il modulo core dell'Archetipo progetto AEM.
Qualità del codice
Questo gate di qualità è configurato come preconfigurato ed esegue l’analisi del codice statico sul codice dell’applicazione AEM.
Per ulteriori informazioni, vedere Test di qualità del codice e Regole per la qualità del codice personalizzato.
Test del prodotto
I test funzionali del prodotto sono test stabili di integrazione HTTP (IT) per le funzionalità AEM di base, incluse le attività di authoring e replica. Adobe li fornisce e li mantiene pronti all’uso. Queste misure hanno lo scopo di impedire l’implementazione di modifiche al codice personalizzato dell’applicazione nel caso in cui interrompano le funzionalità principali del prodotto AEM.
Utilizzano JUnit per l'implementazione, vengono eseguiti con Maven e si basano sui client di test AEM ufficiali. La suite di test del prodotto viene mantenuta come
un progetto open-source, segue le best practice e può essere considerato un buon punto di partenza per l'implementazione dei test.
Test funzionali personalizzati
Analogamente ai test del prodotto, i test funzionali del cliente sono test di integrazione HTTP (IT) implementati con JUnit, eseguiti con Maven e generati sui client di test AEM ufficiali.
Per mantenere efficienti le esecuzioni delle pipeline, Adobe consiglia di concentrarsi sulle funzioni chiave e sui flussi di interazione dell’utente primario, con l’obiettivo di garantire un runtime di test funzionale di circa 15 minuti o meno. Le suite di test funzionali complete che superano questo limite di tempo devono essere eseguite come parte delle pipeline di convalida generali del cliente durante il processo di sviluppo.
Per esempi, consulta test di prodotto open source o il modulo it.tests dell'Archetipo di progetto AEM.
Consulta Test funzionali Java per ulteriori informazioni.
Test dell’interfaccia utente personalizzati
Per massimizzare il controllo dei rischi per lo sviluppo specifico del cliente, Adobe ti incoraggia a acquisire in AEM as a Cloud Service i test critici dell’interfaccia utente. Mantenerli limitati ma focalizzati sulla massimizzazione del loro impatto sulla customer experience.
I test sono inclusi in un’immagine Docker progettata per essere il più volatile possibile (con supporto per Cypress, Playwright, Selenium, Java e JavaScript). Seguono le stesse caratteristiche e gli stessi scopi dei test funzionali personalizzati.
Per mantenere efficienti le esecuzioni della pipeline, l’Adobe consiglia di concentrarsi sulle funzioni chiave e sui flussi di interazione dell’utente principale. Le suite di test dell’interfaccia utente complete che superano questo gate di qualità devono essere eseguite come parte delle pipeline generali di convalida dei clienti. Incorporali nel processo di sviluppo del cliente.
Per esempi, consulta esempi open source o il modulo ui.tests dell'Archetipo di progetto AEM.
Consulta Test dell’interfaccia utente personalizzati per ulteriori informazioni.
Audit dell’esperienza
Il gate di qualità dell'audit dell'esperienza sta eseguendo controlli Google Lighthouse sulla pagina Web del cliente.
Questo gate di qualità è fornito da AEM predefinito, ma non blocca le pipeline di distribuzione. Per impostazione predefinita, viene eseguito un controllo di audit sulla pagina principale (/
) dell'istanza Publish. Puoi contribuire configurando fino a 25 percorsi personalizzati considerati per i controlli di audit.
Per ulteriori informazioni, vedere Test di verifica dell'esperienza.
Convalide cliente
Il gate di qualità delle convalide del cliente è un segnaposto per la strategia e l’impegno di test del cliente stesso, eseguiti prima che le modifiche dell’applicazione del cliente raggiungano le pipeline di implementazione cloud dell’AEM.
Qui puoi scegliere gli strumenti e i framework che preferisci. A differenza dei test delle funzioni dei clienti e dei test dell’interfaccia utente personalizzati, non esistono limiti relativi ad AEM as a Cloud Service. L’Adobe consiglia pertanto di eseguire test funzionali e dell’interfaccia utente di lunga durata qui.
Anche se puoi scegliere qualsiasi strumento e framework, l’Adobe suggerisce di allineare l’integrazione basata su HTTP e i test dell’interfaccia utente con gli strumenti e i framework utilizzati nei gate di qualità dei test funzionali e dell’interfaccia utente personalizzati. Inoltre, l'Adobe consiglia di incorporare Rapid Development Environments (RDE) nella strategia di test locale per rispecchiare da vicino gli ambienti cloud AEM.
Test manuale
Il gate di qualità del test manuale è un segnaposto per i clienti che eseguono test manuali. Poiché le pipeline cloud AEM non supportano i test manuali, devono essere incluse nella strategia di test locale.
Per il test manuale, può essere utile eseguire l’integrazione con un ambiente di sviluppo AEM Cloud Service aggiuntivo.