Guide de Test - Page d'accueil avec PageBuilder (Golden Path - Slice 1)
Date : 2026-09-14
Composant : Page dâaccueil (PageBuilder + SSG + Sanity)
Phase : Golden Path - Slice 1
Prérequis
Section titled âPrĂ©requisâAvant de commencer les tests, assurez-vous que :
- Le fichier
.envà la racine du projet est configuré avec les variables Sanity - Les dépendances sont installées :
task install - Le Sanity Studio est accessible et configuré
1. Démarrage des serveurs locaux
Section titled â1. DĂ©marrage des serveurs locauxâTerminal 1 - Serveur Astro (Web)
Section titled âTerminal 1 - Serveur Astro (Web)âcd /home/anderson/PPtask devLe serveur dĂ©marre sur http://localhost:4321
Terminal 2 - Sanity Studio
Section titled âTerminal 2 - Sanity Studioâcd /home/anderson/PPtask dev:studioLe Studio dĂ©marre sur http://localhost:3333
2. CrĂ©ation dâune page de test dans Sanity Studio
Section titled â2. CrĂ©ation dâune page de test dans Sanity Studioâ- Ouvrez
http://localhost:3333dans votre navigateur - Connectez-vous Ă Sanity Studio
- Cliquez sur âPageâ dans le menu latĂ©ral
- Cliquez sur âNew pageâ
- Remplissez les champs obligatoires :
- Title : âHomepage Testâ
- Slug : âhomeâ
- Status : âPublishedâ
- (Optionnel) Remplissez les champs SEO :
- SEO Title : âTest Homepageâ
- SEO Description : âThis is a test homepage for the PageBuilderâ
- Ajoutez des blocs PageBuilder dans la section Page Builder :
- Cliquez sur âAdd itemâ
- SĂ©lectionnez âHero Sectionâ
- Remplissez :
- Title : âWelcome to Our Siteâ
- Subtitle : âBuilt with Astro + Sanityâ
- Description : âThis is a test of the PageBuilder systemâ
- Primary CTA text : âGet Startedâ
- Primary CTA href : â/aboutâ
- Ajoutez un bloc âFeatures Sectionâ :
- Title : âKey Featuresâ
- Features : Ajoutez 2-3 features avec titres et descriptions
- Cliquez sur âPublishâ
3. Test de la page dâaccueil en production (SSG)
Section titled â3. Test de la page dâaccueil en production (SSG)â3.1. VĂ©rification du build SSG
Section titled â3.1. VĂ©rification du build SSGâcd /home/anderson/PP/apps/webpnpm buildVĂ©rifications :
- Le build se termine sans erreur
- Le dossier
dist/est généré - Les fichiers HTML statiques sont présents
3.2. Test du serveur de prévisualisation
Section titled â3.2. Test du serveur de prĂ©visualisationâcd /home/anderson/PP/apps/webpnpm previewVĂ©rifications :
- Ouvrez
http://localhost:4321 - La page dâaccueil sâaffiche
- Le contenu depuis Sanity est visible (Hero, Features)
- Les métadonnées SEO sont correctes (inspectez la page)
- Les boutons CTA fonctionnent
4. Test du mode Preview
Section titled â4. Test du mode Previewâ4.1. Activation du mode Preview
Section titled â4.1. Activation du mode Previewâ- Dans Sanity Studio, crĂ©ez une nouvelle page ou modifiez la page existante
- Changez le Status en âDraftâ
- Modifiez le titre du Hero : âPreview Mode Testâ
- Cliquez sur le bouton âOpen previewâ en haut Ă droite
- Une nouvelle fenĂȘtre sâouvre avec lâURL de preview
Vérifications :
- La page sâouvre avec le contenu draft
- Le titre affichĂ© est âPreview Mode Testâ
- Un indicateur de preview est visible (si implémenté)
- Le cookie
sanity-previewest présent dans le navigateur
4.2. Sortie du mode Preview
Section titled â4.2. Sortie du mode Previewâ- Naviguez vers
http://localhost:4321/api/exit-preview - Vous ĂȘtes redirigĂ© vers
/welcome
Vérifications :
- Le cookie
sanity-previewest supprimĂ© - Le contenu draft nâest plus visible
- Seul le contenu publiĂ© sâaffiche
5. Test des blocs PageBuilder
Section titled â5. Test des blocs PageBuilderâ5.1. Test du bloc Hero
Section titled â5.1. Test du bloc Heroâ- Le titre sâaffiche correctement
- Le sous-titre sâaffiche
- La description est visible
- Les boutons CTA sont cliquables
- Lâalignement (left/center/right) fonctionne
- Lâimage sâaffiche si ajoutĂ©e
5.2. Test du bloc Features
Section titled â5.2. Test du bloc Featuresâ- Le titre de section sâaffiche
- Les features sont en grille
- Chaque feature a son titre et description
- Les icĂŽnes/images sâaffichent
- Le hover effect fonctionne
5.3. Test du bloc Testimonials
Section titled â5.3. Test du bloc Testimonialsâ- Les tĂ©moignages sâaffichent en grille
- Chaque tĂ©moignage a la citation, lâauteur, le rĂŽle
- Les avatars sâaffichent
- Le style est cohérent
5.4. Test du bloc CTA
Section titled â5.4. Test du bloc CTAâ- Le titre sâaffiche
- La description est visible
- Les boutons sont cliquables
- La couleur de fond change selon lâoption
5.5. Test du bloc RichText
Section titled â5.5. Test du bloc RichTextâ- Le contenu Portable Text sâaffiche
- Les titres (h1, h2, h3, h4) sont stylisés
- Les paragraphes sont lisibles
- Les liens sont cliquables
- Les blockquotes sont stylisés
5.6. Test du bloc ImageGallery
Section titled â5.6. Test du bloc ImageGalleryâ- Les images sâaffichent en grille
- Les captions sont visibles
- Le layout (grid-3, grid-4, masonry) fonctionne
- Le hover effect sur les images fonctionne
6. Test du middleware Cloudflare
Section titled â6. Test du middleware Cloudflareâ6.1. VĂ©rification des headers CSP
Section titled â6.1. VĂ©rification des headers CSPâOuvrez les DevTools (F12) â Network â Rechargez la page â Cliquez sur la requĂȘte principale
Vérifications :
- Le header
Content-Security-Policyest présent - Les directives CSP sont correctes
- Aucune erreur CSP dans la console
6.2. Test du bypass cache en mode Preview
Section titled â6.2. Test du bypass cache en mode Previewâ- Activez le mode preview (voir section 4)
- Ouvrez les DevTools â Network
- Rechargez la page
Vérifications :
- Le header
Cache-Controlestno-store, no-cache, must-revalidate - Le header
X-Preview-Modeestactive - Le header
Pragmaestno-cache
7. Génération des types TypeScript
Section titled â7. GĂ©nĂ©ration des types TypeScriptâ7.1. GĂ©nĂ©ration des types
Section titled â7.1. GĂ©nĂ©ration des typesâcd /home/anderson/PP/apps/webpnpm sanity:typegenVĂ©rifications :
- Le fichier
src/sanity.types.tsest généré - Les types pour
pageet les blocs PageBuilder sont présents - Aucune erreur TypeScript dans le projet
8. Checklist de validation finale
Section titled â8. Checklist de validation finaleâAvant de considĂ©rer le Slice 1 comme terminĂ© :
- La page dâaccueil sâaffiche correctement en production (SSG)
- Les blocs PageBuilder sont rendus correctement
- Les métadonnées SEO sont injectées (title, description, OG)
- Le mode Preview permet de voir les brouillons de page
- Le cache Edge fonctionne correctement
- Le middleware Cloudflare applique les CSP headers
- Le middleware bypass le cache en mode preview
- Les types TypeScript sont générés correctement
- Le build SSG se termine sans erreur
- Aucune erreur dans les logs
9. Dépannage
Section titled â9. DĂ©pannageâProblĂšme : La page affiche âNo page content foundâ
Section titled âProblĂšme : La page affiche âNo page content foundââSolution :
- VĂ©rifiez quâune page avec slug âhomeâ existe dans Sanity
- VĂ©rifiez que le status est âPublishedâ
- VĂ©rifiez que les variables dâenvironnement Sanity sont correctes
ProblĂšme : Le mode Preview ne fonctionne pas
Section titled âProblĂšme : Le mode Preview ne fonctionne pasâSolution :
- Vérifiez que
SANITY_PREVIEW_SECRETest défini dans.env - Vérifiez que le secret est identique dans
.envet Sanity Studio - Vérifiez que le cookie
sanity-previewest posé - Vérifiez que
SANITY_API_READ_TOKENest défini (nécessaire pour les drafts)
ProblĂšme : Les images ne sâaffichent pas
Section titled âProblĂšme : Les images ne sâaffichent pasâSolution :
- Vérifiez que les images sont uploadées dans Sanity
- VĂ©rifiez que lâasset est publiĂ©
- VĂ©rifiez les permissions de lâasset
ProblĂšme : Erreur TypeScript
Section titled âProblĂšme : Erreur TypeScriptâSolution :
- Lancez
pnpm sanity:typegenpour régénérer les types - Vérifiez que le fichier
sanity.types.tsexiste dansapps/web/src/
10. Prochaines étapes
Section titled â10. Prochaines Ă©tapesâUne fois le Slice 1 validĂ© :
- Passer au Slice 2 : Article de blog (SSG + Sanity + Portable Text)
- Intégrer Pagefind pour la recherche
- Configurer le webhook de rebuild (Slice 6)
Historique des modifications
| Date | Version | Description | Auteur |
|---|---|---|---|
| 2026-09-14 | 1.0 | CrĂ©ation du guide de test pour la page dâaccueil | Cascade |