Attualmente sto progettando un framework di test automatizzato per eseguire test di sistemi embedded su un sistema Linux embedded. Esiste un vecchio sistema, ma è particolarmente difficile da usare, principalmente perché non è stato progettato come un framework ed è stato originariamente progettato per testare un solo prodotto. Ciò significa che il framework cambia con ogni nuovo prodotto da testare, il che richiederebbe molto tempo per capire semplicemente dove modificare il sistema e come.
Ora, mi è stata data l'opportunità di creare un nuovo sistema da zero, con l'obiettivo di renderlo molto più facile da usare e molto più intuitivo. Una delle cose che ho notato sia nel vecchio sistema che negli altri sistemi di test che ho usato è stata l'idea di impostare tutti i test e le condizioni di verifica, e quindi eseguire il test in modo che la configurazione e il test correre erano due percorsi diversi che si verificavano in sequenza. Uno dei lati negativi di questo è che qualsiasi dichiarazione di stampa si verificherebbe al di fuori del percorso del flusso del tester attuale, quindi la stampa delle variabili non riuscite deve essere aggiunta al tester in qualche modo.
Ora che mi viene in mente di ridisegnare il sistema. Mi chiedo quali ulteriori vantaggi si presentino adottando un'architettura in stile test-runner semplicemente impostando le cose, controllando variabili e riportando tutte allo stesso tempo.