Unit Test

di il
5 risposte

Unit Test

Qualcuno può spiegarmi con parole semplici cosa è Unity Test e come si usa ?
Grazie

5 Risposte

  • Re: Unit Test

    Ho visto qualcosa su google. Sono un autodidatta ed in età non più giovane (70 anni).
    Mi sono sempre interessato di programmazione , ma alla vecchia maniera Assembler, Fortran, Cobol e basic.
    Da un paio d’anni ho studiato V.B.Net per vedere se ero in grado di approcciare la programmazione ad oggetti.
    Ho cosi riscritto alcune vecchie mie procedure gestionali in VB.
    Ho sentito parlare di Unit Test per verificare il codice e volevo saperne un poco di più da qualcuno sicuramente più
    preparato di me.
    La domanda (scusami se è banale) è come mai con vb.2008 e vb.2010 col tasto destro del mouse sul nome del metodo non compare "Create Unit Test", forse le versioni scaricate gratis non lo permettono o ci vuole qualche riferimento al progetto o qualche altro motivo ?
    Grazie anticipate per il tuo interessamento
  • Re: Unit Test

    Whella, un'altro che ha visto la NASCITA dell'informatica

    Quindi tu DEVI conoscere la differenza tra Vero Programmatore e Magiatore di Ciocori'

    Se non la conosci, leggi questi:

    http://www.deltablog.it/il-vero-programmatore

    (ci sono diverse varianti)

    Sono dei classici

    Tu ti puoi sicuramente fregiare dell'alta onorificenza di Vero Programmatore

    Diciano che data la presenza di figli/nipotini, hai dovuto ammorbidirti (VB.NET)

    Si, la possibilita' di creare un unit test e' una funzionalita' avanzata, disponibile solo sulle versioni a pagamento di Visual Studio.

    Un Unit Test e' come avrai capito, semplicemente una funzioncina che CHIAMA un'altra funzione/metodo, passandogli dei parametri CONOSCIUTI e controlla se il risultato e' quello previsto, pensa, ad esempio, ad una funzione trigonometrica (seno, coseno, tangente).

    Questa idea la puoi estendere a qualunque tipo di operazione: creazione di un file
    1) il file non esiste
    2) crei il file
    3) il file DEVE esistere

    Creazione di una struttura dati:
    1) la struttura dati non esiste
    2) crei la struttura dati
    3) la struttura dati DEVE edistere ed avere ESATTAMENTE la forma che ti aspetti.

    ecc ..

    Dove sta' la comodita'?
    In questo:

    1) lo Unit Test e' una PROCEDURA SENZA PARAMETRI, quindi ha una signature standard
    2) nell'implementazione del unit test, se la funzione/metodo non fa quello che ti aspetti, ti generi un'eccezione (errore), quindi il tuo Unit Test ha un comportamento standard.
    L'errore non e' generato casaccio, ma deve essere un errore che SPECIFICA che cosa e' andato male.
    La libreria per fare gli Unit Test mette a disposizione tutta una serie di eccezioni standard molto comode, in questo senso
    2) esiste un'infrastruttura in grado di eseguire in automatico tutti gli unit test, e mostrarti lo stato di avanzamento (quali sono stati eseguiti, quale e' quello in esecuzione e quali sono ancora da eseguire), quali sono andati bene, quali sono falliti e perche'.

    Concettualmente non c'e' nulla di nuovo: di questi test ne avrai scritti a milioni
    La novita' sta' solo nel fatto che ora c'e' un framework/infrastruttura (integrata nell'IDE) che ti fa fare le cose in modo ordinato, e sfrutta questo ordine per dare a questi test un aspetto piu' gradevole (colori verdi e rosso, elenco dei Unit Test creato in automatico, possibilita' di rieseguire uno specifico Unit Test, pissibilita' di saltare direttamente al codice di un Unit Test, vedere l'eccezione che e' stata generata, ecc...)

    Per trovare una versione a pagamento di Visual Studio, non e' particolarmente difficile

    Oppure, puoi guardare qui:

    https://www.nunit.org

    e provare l'Adapter per Visual Studio

    Consiglio: abbandona VB.NET e passa a C#

    E' un linguaggio di programmazione, ha una sua sintassi, ma alla fin fine ci fai le stesse cose che facevi con VB.NET.

    Ti ci dovrai scornare per una settimana, al limite un mese, ma una volta fatto il passo, avri accesso una quantita' sterminata di nuove librerie che ti permettereanno di ballocarti anche con altri giocattoli decisamente carini: elaborazione di immagini, intelligenza artificiale, ecc... Nella maggior parte dei casi non serve essere un esperto, basta capire i concetti fondamentali (10 minuti!)

    Oltre al fatto che per C# ci sono IDE gratuiti e tool che integrano la gestione degli Unit Test:
    SharpDevelop + NUnit
    JetBrains Raider + NUnit
  • Re: Unit Test

    Ti ringrazio per il tuo interessamento ma non volevo in alcun modo recarti tanto disturbo e mi
    dispiace averti fatto perdere tanto tempo.
    Si, hai ragione, non sono un vero programmatore ma solo un vecchio programmatore che ha iniziato a lavorare nel 1970 su IBM/370 (quando esistevano ancora le schede perforate).
    La mia domanda è stata dettata solo dalla curiosità di voler capire come un programma potesse controllare un codice scritto.
    Ho notato nella tua risposta una certa ironia, ma va bene lo stesso, ti ringrazio e ti saluto
  • Re: Unit Test

    Ironia, certo, ma guarda che sono un quasi tuo coetaneo

    Vabbe', con qualche annetto di meno, ma mooolti di meno di quanti tu possa pensare

    Mettiamola cosi': ho visto la morte delle schede perforate (fine anni '70, e le ho viste usare quando si andava in autostrada!!!!) e la nascita del C (1978)

    Dalla TUA risposta deduco hai interpretato la MIA risposta nel modo opposto!

    Invece voleva essere il ricordo di quando programmare voleva dire conoscere l'hardware fino nei suoi piu' piccoli segreti, al contrario dei giovinastri attuali che si spacciano per programmatori e sanno si e no far di conto
  • Re: Unit Test

    Allora scusami ho interpretato male, ciao
Devi accedere o registrarti per scrivere nel forum
5 risposte