Épisode 14:Zhaoyang Li sur MTV et Eric Aleshire dans TOK (octobre 2020)
Épisodes précédents
Vous souhaitez détecter les régressions pour votre nouvelle fonctionnalité dans Chrome ? Ajoutez vos tests à la cascade (infrastructure de compilation et de test continues de Chrome).
De nombreux compilateurs sur la cascade de Chrome exécutent des tests sur différentes plates-formes. Cet article explique comment ajouter une suite de tests à un compilateur existant. Avant de continuer, posez-vous les questions suivantes:
Les nouveaux tests doivent-ils être disponibles dans une toute nouvelle suite ou simplement être ajoutés à une suite existante ?
- Les tests sont organisés dans des suites de tests en fonction de la proximité de l'emplacement source et du thème. Si vos nouveaux tests ne peuvent pas s'intégrer logiquement dans une suite existante, vous aurez probablement besoin d'une nouvelle suite.
Les tests doivent-ils être exécutés sur un constructeur public ou interne ?
- Utilisez un compilateur interne si le code se trouve dans un dépôt interne ou si les tests impliquent des données confidentielles.
Les tests doivent-ils être exécutés dans l'intégration continue (CI), l'intégration principale (CI) ou dans la file d'attente des commits (CQ) ?
- Pour information, l'intégration continue nécessite votre auto-surveillance. Elle est utilisée pour affiner les tests ou effectuer des tests.
- Les principaux tests CI sont régulièrement surveillés par les shérifs.
- CQ bloque l'envoi de CL en cas d'échec, mais utilise davantage de ressources d'infrastructure. Une nouvelle suite doit toujours démarrer depuis CI avant d'être promue en CQ.
- En cas de doute, l'équipe EngProd de votre plate-forme peut vous aider.
J'ai déjà une suite de tests en cours d'exécution dans CI. Comment l'ajouter à CQ ? / Que faire si j'ai besoin d'un nouveau compilateur ?
- Signalez un bug dans Infra > Client > Composant Chrome afin que l'équipe
chrome-browser-infra@
puisse lancer les évaluations et vous aider à le configurer.
Ajouter une suite de tests à un compilateur existant
Pour ajouter une suite de tests à un compilateur existant, vous devez configurer des fichiers dans //src/testing/buildbot/
:
- Créez une clé dans
gn_isolate_map.pyl
pour la nouvelle suite de tests avec des informations sur le libellé et le type de la cible de test. Ajoutez cette clé à un groupe de test dans
test_suites.pyl
. (Vous trouverez le mappage entre le nom du compilateur et les groupes de test du compilateur danswaterfalls.pyl
.)'all_simulator_tests': { 'previously_existing_test_suite': {}, 'exciting_new_feature_test_suite': {}, },
Plus de réglages.
mixins.pyl
contient des arguments qui peuvent être appliqués à un groupe de tests à différents niveaux.variants.pyl
permet d'exécuter une suite dans plusieurs instances avec des arguments différents.
Générez à nouveau les fichiers de configuration en exécutant
generate_buildbot_json.py
.
Ensuite, il vous suffit de vérifier vos modifications de configuration. Les compilateurs qui exécutent cette suite récupèrent automatiquement les nouveaux tests, et les résultats commenceront à être transmis dans l'interface Web du compilateur sur la cascade d'annonces. Ils contiennent de nombreuses informations de débogage en cas d'échec.