Produzione o dati di test personalizzati per il test unitario?

1

Recentemente ho avuto un piccolo disaccordo con altri sviluppatori. Stiamo trasformando varie ontologie dal formato sorgente originale (Pica +, RDF, ecc.) Nel nostro formato dati e abbiamo diversi convertitori dedicati esattamente a questo compito. L'argomento è venuto se o non dovremmo utilizzare il file completo ontology-data, o creare un sottoinsieme specificamente utilizzato per il test.

Ho discusso il caso di un sottoinsieme: un file creato su misura di tutti i casi d'uso richiesti per confermare che i convertitori stiano girando correttamente. Hanno sostenuto che un file di produzione è sempre aggiornato e qualsiasi modifica nel file di produzione interromperà i test. È vero, ho detto, ma se è necessaria una modifica dei file di produzione, allora i requisiti sono invariabili, pertanto non è un errore utilizzare i dati di test. Hanno considerato questo argomento molto debole e hanno deciso in modo sommario di non utilizzare un file di prova creato dall'utente.

La domanda, per riassumere, è se utilizzare o meno il file in produzione per testare i nostri convertitori o un sottoinsieme di dati. Quali sono i pro e i contro? Sono molto favorevole all'utilizzo di un file di test per la conversione, ma sono disposto ad assumere che la mia premessa sia imperfetta. Se ho ragione, c'è un modo in cui posso argomentare più eloquentemente e persuasivamente il mio caso?

    
posta IAE 18.05.2013 - 23:01
fonte

1 risposta

3

Ti consiglio caldamente di avere entrambi

  • dati artificiali in uno o più piccoli file di test per verificare singolarmente ogni requisito (forse per unit testing)

  • uno o più file di produzione di una determinata dimensione per verificare le cose a cui non avevi pensato durante la progettazione dei dati artificiali (questo ti dà un test di integrazione )

Secondo la mia esperienza, è molto probabile che questi due tipi di file di test catturino diversi tipi di bug. Inoltre, i test con piccoli dati vengono eseguiti in genere molto più rapidamente, questo rende la possibilità molto più alta che qualcuno usi effettivamente i test regolarmente (non so se questo è un fattore per il tuo prodotto).

Quando cambiano le tue esigenze, dovrai aggiornare entrambi i tipi di file, quindi questo non è né un argomento per il primo né per il secondo tipo di file di test.

    
risposta data 19.05.2013 - 00:34
fonte

Leggi altre domande sui tag