In pratica stai parlando di un'unità molto grande. Normalmente, scriveresti molti piccoli test di unità per unità di piccole dimensioni, ma in questo caso sarà probabilmente un sacco di test elaborati per una grande unità.
Al mio lavoro, abbiamo lo stesso tipo di problema. In alcuni dei nostri prodotti utilizziamo SOUP (Software di provenienza sconosciuta), che dobbiamo "unit test" per conformarci a regole e regolamenti relativi ai nostri prodotti.
SOUP può essere una libreria, ad es. uno stack Bluetooth o un framework di esecuzione, ad es. QP / C . Scriviamo test che eseguono l'API o scrivono applicazioni di test che integrano il SOUP e testano le sue funzioni (interne).
Una funzione importante di questi test è quella di rilevare la regressione o le modifiche indesiderate quando il SOUP viene aggiornato. Ma la maggior parte delle volte, questi test sono usati per verificare che il SOUP faccia quello che ci si aspetta che faccia e che non ci siano brutte sorprese o casi d'angolo.
Sviluppare test di "unità" per un pezzo di software non strutturato è anche molto utile se si desidera ristrutturarlo o sostituirlo.