Test di composizioni complesse

2

Ho una collezione piuttosto ampia di classi che controllano e mutano una data struttura di dati. Possono essere composti tramite il modello di composizione in strutture ad albero arbitrariamente complesse. Il prodotto finale contiene molte di queste strutture composte.

La mia domanda è ora: come posso testarli? Anche se è facile testare ogni singola unità di queste composizioni, è piuttosto costoso testare tutte le composizioni nel seguente senso:

  • Il test del layout corretto dell'albero della composizione si traduce in un numero enorme di casi di test
  • Le modifiche nelle composizioni portano a una revisione molto laboriosa di ogni singolo caso di test

Qual è la linea guida generale qui?

    
posta phlipsy 13.06.2014 - 06:30
fonte

1 risposta

2

Se qualcosa è noioso, spesso può essere automatizzato, questo è vero per la generazione di dati di test e per molte altre attività.

Invece di costruire manualmente ogni caso di test, scrivi un generatore di test case, che prende una semplice descrizione testuale dell'albero (forse una sorta di "mini DSL") e la costruisce. Scrivi una seconda funzione che prende l'albero della composizione e lo riduce nuovamente alla descrizione testuale. Ora sarà facile creare un test guidato dai dati: creare una serie di descrizioni di alberi e lasciare che il test verifichi che la conversione all'albero della composizione e la seguente riconversione al testo riproducano sempre l'input originale.

(Nota: ecco un post precedente su PSE dove l'idea di utilizzare un DSL per strutture ad albero è stato spiegato in un contesto diverso.)

    
risposta data 13.06.2014 - 07:46
fonte

Leggi altre domande sui tag