Domanda

Mi sono imbattuto in uno stampato articolo di Bertrand Meyer dove afferma che i test possono essere generati dalle specifiche.Il mio team di sviluppo non fa nulla del genere, ma sembra una buona tecnica da considerare.Come generate i test dalle specifiche?Come descriveresti il ​​successo che hai ottenuto nello scoprire gli errori del programma tramite questo metodo?

È stato utile?

Soluzione

Ci sono tutti i modi per farlo, da quella che considero una "forma d'arte" (e non necessariamente una buona arte) fino ai test derivati ​​matematicamente da specifiche formali.Alla fine della giornata, il tuo team di sviluppo deve decidere cosa può fare in base al programma con cui sta lavorando.Detto questo, essere in grado di testare il software rispetto alle specifiche è una buona cosa.

Solo il tuo team può valutare la "profondità" dei tuoi test, e questo probabilmente dipenderà dalla bontà delle tue specifiche.Se dicono qualcosa del tipo "l'interfaccia utente di accesso deve fornire un pulsante di annullamento e un pulsante di accesso e devono funzionare", i tuoi test saranno piuttosto generali.Ma tieni presente che anche i test molto generali sono una buona cosa.Testare è una buona cosa.Troppi sviluppatori hanno un atteggiamento negativo quando si tratta di testare, ma alla fine stai distribuendo software che dovrebbe funzionare e, per me, questo significa molto.

L'efficacia che i tuoi test avranno nel trovare i difetti del programma dipenderà dai dettagli che inserisci in essi.Ciò che è particolarmente utile nell'avere procedure di test scritte secondo le specifiche è che puoi testare ciascuna build allo stesso livello di dettaglio della build precedente (tipicamente indicato come test di regressione).

Altri suggerimenti

Questo potrebbe essere un riferimento a RSpec, che è un modo davvero intelligente di sviluppare i test come una serie di requisiti.Mi sto ancora abituando, ma è stato molto utile sia per definire cosa devo fare sia per assicurarmi di farlo.

@Tim Sullivan di Bertrand Meyer può essere correlato solo a Eiffel :)

Penso che stia parlando ESpec.Dato il nome RSpec dei Ruby Folk, penso che possiamo dare loro l'etichetta "fortemente ispirato".

Direi che dipende dalle tue specifiche.Devo ancora lavorare in un punto in cui le specifiche fossero abbastanza buone da creare unit test completi dalle specifiche: il livello di dettaglio semplicemente non c'era.I miei manager ci dicevano sempre che se avessimo specificato a quel livello avrebbero potuto semplicemente spedire le specifiche in India e codificarle a buon mercato ;)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top