Exercices¶
Étape 0 : Configuration initiale¶
Acceptation du devoir
Votre enseignant vous fournira un lien GitHub Classroom (exemple: https://classroom.github.com/a/xyz123) au début de ce TP. Ce lien créera automatiquement un dépôt privé pour vous.
- Accepter le devoir GitHub Classroom
- Cliquez sur le lien fourni par l'enseignant
- Connectez-vous à votre compte GitHub si nécessaire
- Acceptez l'assignment
-
Attendez que GitHub crée votre dépôt personnel (cela prend quelques secondes)
-
Ouvrir dans GitHub Codespaces
- Une fois le dépôt créé, cliquez sur le bouton vert Code
- Sélectionnez l'onglet Codespaces
- Cliquez sur Create codespace on main
-
Patientez pendant que l'environnement de développement se charge (1-2 minutes)
-
Vérifier la structure initiale
Dossiers et fichiers à ne pas modifier
Ne modifiez pas la structure des dossiers ou les fichiers déjà présents dans le dépôt. Chaque exercice doit être réalisé dans son propre dossier (exercice-1/, exercice-2/, etc.) comme indiqué dans les énoncés.
Liste des dossiers/fichiers à ne pas modifier :
Workflow de travail avec GitHub Classroom (Rappel)
Étape 0 : Configuration initiale (Début du TP)¶
Acceptation du devoir
Votre enseignant vous fournira un lien GitHub Classroom au début de ce TP. Ce lien créera automatiquement un dépôt privé pour vous.
- Accepter le devoir GitHub Classroom
- Cliquez sur le lien fourni par l'enseignant
- Connectez-vous à votre compte GitHub si nécessaire
- Acceptez l'assignment
-
Attendez que GitHub crée votre dépôt personnel (cela prend quelques secondes)
-
Ouvrir dans GitHub Codespaces
- Une fois le dépôt créé, cliquez sur le bouton vert Code
- Sélectionnez l'onglet Codespaces
- Cliquez sur Create codespace on main
-
Patientez pendant que l'environnement de développement se charge (1-2 minutes)
-
Vérifier la structure initiale
Workflow par exercice¶
Pour chaque exercice de ce TP, vous devez suivre rigoureusement ce processus :
1. Créer une branche dédiée¶
Nommage des branches
Respectez strictement le format : exercice-1, exercice-2, etc. (tout en minuscules, avec tiret)
2. Créer le dossier de l'exercice¶
Organisation
Chaque exercice doit avoir son propre dossier : exercice-1/, exercice-2/, etc.
3. Développer la solution¶
- Travaillez sur les fichiers dans le dossier de l'exercice
- Testez régulièrement votre code dans le navigateur
- Utilisez l'extension Live Preview de Codespaces pour prévisualiser
4. Commits réguliers¶
Conseils pour les commits
- Faites des commits atomiques (une fonctionnalité = un commit)
- Utilisez des messages clairs et descriptifs
- Préfixes recommandés :
feat:,style:,fix:,docs:
5. Pousser la branche vers GitHub¶
6. Ouvrir une Pull Request (PR)¶
- Allez sur votre dépôt GitHub dans le navigateur
- GitHub détectera automatiquement votre nouvelle branche
- Cliquez sur Compare & pull request
- Remplissez la description de la PR :
- Ajoutez des captures d'écran dans les commentaires de la PR :
- Faites des captures de votre travail (Windows : Win+Shift+S, Mac : Cmd+Shift+4)
- Glissez-déposez les images directement dans le champ de commentaire
-
GitHub les hébergera automatiquement
-
Cliquez sur Create pull request
Important : NE PAS MERGER
- Ne cliquez JAMAIS sur le bouton "Merge pull request"
- Attendez la validation de votre enseignant
- L'enseignant pourra :
- Commenter votre code
- Demander des modifications
- Valider et merger lui-même
7. Passer à l'exercice suivant¶
Exemple de structure finale du dépôt¶
Checklist de validation avant PR¶
Avant d'ouvrir chaque pull request, vérifiez :
- Mon code fonctionne correctement (testé dans le navigateur)
- Tous mes fichiers sont dans le bon dossier (
exercice-X/) - J'ai fait des commits réguliers avec des messages clairs
- Ma branche est nommée correctement (
exercice-X) - J'ai ajouté au moins 2 captures d'écran dans la description de la PR
- Je n'ai PAS cliqué sur "Merge"
- Mon code est propre (indentation, pas de code commenté inutile)
Tests automatiques avec GitHub Actions (Autograding)
Présentation du système d'autograding¶
Tests automatisés
Votre dépôt GitHub Classroom est configuré avec des tests automatiques qui s'exécutent à chaque push. Ces tests vérifient que votre code respecte les exigences de chaque exercice.
Comment ça fonctionne ?¶
- Déclenchement automatique : À chaque
git push, GitHub Actions lance une série de tests - Validation du code : Les tests vérifient la structure HTML, le CSS, la présence de fichiers, etc.
- Rapport de résultats : Vous recevez un feedback immédiat sur ce qui fonctionne ou non
- Note automatique : Votre score est calculé en fonction des tests réussis
Où voir les résultats des tests ?¶
1. Sur votre Pull Request¶
Quand vous ouvrez une PR, vous verrez une section "Checks" en bas de la page :
Pour voir les détails :
- Cliquez sur "Details" à côté du test qui a échoué
- Vous serez redirigé vers la page des logs GitHub Actions
2. Dans l'onglet "Actions" du dépôt¶
- Allez sur votre dépôt GitHub
- Cliquez sur l'onglet "Actions" en haut
- Vous verrez la liste de tous les workflows exécutés
- Cliquez sur un workflow pour voir les détails
Comprendre les logs de tests¶
Structure typique des logs¶
Interpréter les résultats¶
| Symbole | Signification | Action requise |
|---|---|---|
✅ ✓ |
Test réussi | Rien à faire, c'est parfait ! |
❌ ✕ |
Test échoué | Lire le message d'erreur et corriger |
⏭️ ○ |
Test ignoré | Peut-être pas encore implémenté |
Debugging pas à pas¶
Étape 1 : Identifier le test qui échoue¶
Dans les logs, cherchez la ligne avec ✕ :
Étape 2 : Lire le message d'erreur complet¶
Juste en dessous, vous trouverez des détails :
Étape 3 : Localiser le problème dans votre code¶
Ouvrez styles.css et vérifiez :
Étape 4 : Corriger et re-tester¶
Les tests se relanceront automatiquement !
Conseils pour réussir les tests¶
Conseils pratiques
- Testez localement avant de pusher.
- Lisez attentivement les messages d'erreur
- Respectez les noms de fichiers exacts (minuscules, tirets)
- Validez votre HTML sur W3C Validator
- Commitez régulièrement pour voir l'évolution des tests
- Ne paniquez pas si des tests échouent : c'est fait pour vous guider !
Pièges courants
- ❌ Fichiers dans le mauvais dossier
- ❌ Fautes de frappe dans les noms de fichiers
- ❌ Balises HTML mal fermées
- ❌ Sélecteurs CSS trop spécifiques ou inexistants
- ❌ Images sans attribut
alt - ❌ Oubli du lien vers le fichier CSS
En cas de problème persistant¶
Si vous ne comprenez pas pourquoi un test échoue :
- Relisez les logs attentivement (ligne par ligne)
- Comparez avec l'énoncé de l'exercice
- Vérifiez que votre structure de dossiers est correcte
- Demandez de l'aide dans les commentaires de la PR
- Consultez la documentation MDN pour la syntaxe HTML/CSS
L'enseignant peut également ajouter des commentaires directement sur votre PR pour vous guider.
Étape 1 : faire les exercices¶
Rendez-vous dans les sections dédiées aux exercices dans la barre de navigation latérale pour accéder aux énoncés détaillés et aux ressources nécessaires pour chaque exercice.
Liste des exercices
Ce TP comprend 6 exercices progressifs couvrant les tableaux HTML, les formulaires, les iframes et les galeries d'images :
- Exercice 0 : Formulaire d'inscription (HTML uniquement) - Focus sur la structure
- Exercice 1 : Tableau de notes d'élèves
- Exercice 2 : Comparaison de produits
- Exercice 3 : Navigation avec iframes
- Exercice 4 : Formulaire de commande (HTML + CSS + Images)
- Exercice 5 : Galerie d'images interactive
Date limite et modalités de rendu¶
Deadline
Date limite : à la fin de la séance
- Toutes les branches doivent être poussées sur GitHub
- Les 6 pull requests doivent être ouvertes et documentées
- Les captures d'écran doivent être ajoutées dans les PRs
Aucun retard ne sera accepté sans justification valable.
Bon courage et bon codage ! 🚀