Episodio 14: di Zhaoyang Li in MTV ed Eric Aleshire in TOK (ottobre 2020)
Puntate precedenti
Vuoi rilevare regressioni per la tua nuova funzionalità in Chrome? Aggiungi il tuo i test alla struttura a cascata (l'infrastruttura di test e build di Chrome).
La struttura a cascata di Chrome offre molti builder che eseguono test su una piattaforme di terze parti. Questo articolo descrive come aggiungere una suite di test a una suite Builder. Prima di procedere, poniti queste domande:
I nuovi test devono trovarsi in una suite completamente nuova o semplicemente essere aggiunti a una suite esistente?
- I test sono organizzati in suite di test in base alla vicinanza della località e del tema di origine. Se i nuovi test non sono logicamente compatibili con nessuna suite esistente, probabilmente hanno bisogno di una nuova suite.
I test devono essere eseguiti su un builder pubblico o interno?
- Utilizza un generatore interno se il codice si trova in un repository interno oppure la che coinvolgano dati riservati.
I test devono essere eseguiti in CI FYI, CI principale o coda di commit(CQ)?
- Tieni presente che CI ha bisogno del tuo automonitoraggio e viene utilizzato per il perfezionamento dei test o degli esperimenti.
- I test CI principali vengono monitorati regolarmente dagli sceriffi.
- CQ blocca l'invio di CL in caso di errore, ma richiede più risorse di infrastruttura. Una nuova suite deve sempre iniziare da CI prima di essere promossa a CQ.
- In caso di dubbi, il team EngProd della tua piattaforma può aiutarti a decidere.
Ho già una suite di test in esecuzione in CI, come faccio ad aggiungerla a CQ? / E se hai bisogno di un nuovo builder?
- Segnala un bug in Infra>Client>Componente Chrome in modo che
Il team di
chrome-browser-infra@
può avviare le valutazioni e aiutarti a eseguire la configurazione.
Come aggiungere una suite di test a un builder esistente
Per aggiungere una suite di test a un builder esistente, devi configurare alcuni file
tra //src/testing/buildbot/
:
- Crea una chiave in
gn_isolate_map.pyl
per la nuova suite di test con informazioni sul tipo e sull'etichetta del target di test. Aggiungi il token a un gruppo di test in
test_suites.pyl
. Puoi trovare la mappatura dal nome del generatore ai gruppi di test sul builder inwaterfalls.pyl
.'all_simulator_tests': { 'previously_existing_test_suite': {}, 'exciting_new_feature_test_suite': {}, },
Più regolazioni.
mixins.pyl
contiene argomenti che può essere applicata a un gruppo di test a vari livelli di gruppo.variants.pyl
consente di eseguire una suite in più istanze con argomenti diversi.
Rigenera i file di configurazione eseguendo
generate_buildbot_json.py
Dopodiché, è sufficiente controllare le modifiche alla configurazione. i builder che eseguono questa suite acquisiranno i nuovi test automaticamente i risultati inizieranno a essere inviati nell'interfaccia web per lo strumento di creazione struttura a cascata, completa di molte informazioni di debug in caso di errori.