Come dovrei testare la mia domanda? [chiuso]

-1

Ho creato una semplice applicazione che cerca file e cartelle sul computer degli utenti. Dal momento che, al momento, sono uno studente al 1 ° anno e non ho alcuna formazione formale e ho fatto la mia domanda mentre stavo ancora imparando C # e. Quadro Net, non avevo conoscenza dei test unitari e di altri buoni metodi di test usati da professionisti. Anche se la maggior parte del mio codice funziona bene, a volte genera eccezioni o si verifica qualche altra situazione imprevista e il codice si interrompe.

Tenendo presente le esperienze di cui sopra, non penso che la mia applicazione sia pronta per l'implementazione e quindi, vorrei testare la mia domanda in modo professionale, e mi assicuro che la mia applicazione sia priva di bug.

Pertanto, voglio chiedere ai professionisti qui, che tenendo presente la mia situazione, come dovrei iniziare a testare la mia applicazione.
Quali sono i passi che dovrei seguire, per garantire la qualità della mia applicazione.

    
posta Pratik Singhal 22.01.2014 - 17:18
fonte

1 risposta

0

Passaggio 0: messa a fuoco e non essere sopraffatto

Ci sono diversi tipi di test che puoi fare. Esistono test unitari, test di accettazione, test di integrazione, sviluppo guidato dai test (TDD), sviluppo guidato dal comportamento (BDD), sviluppo guidato dai test di accettazione (ATDD), ecc. Non ancora impantanati nella terminologia. Concentrati sui test di accettazione (vedi nota), che significa approssimativamente testare la versione finale del tuo programma completo. Una volta che ti sei bagnato con i test più semplici, puoi iniziare a guardare il mondo più vasto dei test del software.

Note: Some folks may give advice to start with unit testing. That's cool, too. That can be pretty easy if you're using a language with a built-in unit testing framework. If not, installing a unit testing framework can be a pain. This is why I recommend starting with acceptance testing, because you don't need a fancy framework. All you need is a way to call your program from a script or from another program. You probably already have the tools to do that on your machine.

Passaggio 1: crea alcuni dati di test

Crea una cartella e in quella cartella metti alcuni file fittizi. Fai in modo che tu possa facilmente trovarli tutti (es: i loro nomi iniziano tutti con "f"), alcuni di essi (es: alcuni nomi terminano con una "Z", altri no), nessuno di essi (es. : nessuno ha la parola "foobar" nel loro nome). Questi sono i tuoi dati di prova. Se il tuo programma può cercare sottocartelle, crea anche alcune sottocartelle.

Passaggio 2: crea un semplice script di test

Scrivi uno script di test usando qualsiasi linguaggio di scripting con cui ti trovi a tuo agio - python, bash, PowerShell, ecc. Questo script dovrebbe chiamare il tuo programma con parametri per cercare i file. Ad esempio, dovrebbe dirti dove cercare (ad esempio: la tua nuova cartella) e cosa cercare (es .: F *, * Z, foobar ). Poiché controlli quanti file ci sono nella tua cartella di test, dovresti sapere che una ricerca di F * restituirà i file X, cercando * Z dovrebbe restituire i file Y, e la ricerca di foobar dovrebbe restituire 0.

Nota: non è necessario utilizzare un linguaggio di scripting. Di solito è più facile che creare un programma di test compilato. Se conosci solo una lingua, però, usa quella lingua per ora.

In realtà non deve essere più fantasioso di quello - un singolo script che chiama la tua funzione, e poi verifica che ciò che ritorna è ciò che ti aspetti. Fallo per diversi criteri di ricerca. Fai stampare alla tua sceneggiatura un nome semplice per ciascun test e "PASS" o "FAIL".

Passaggio 3: aggiungi altri casi di test

Mentre stai scrivendo i tuoi primi test, probabilmente scriverai dei test per i casi semplici. Pensa a edge cases - verifica i limiti di ciò che il tuo codice può fare. Il tuo programma accetta una discussione indicando dove cercare? Scrivi un test in cui non gli viene fornito l'argomento per assicurarsi che venga stampato un messaggio di errore appropriato. Puoi passare più di un argomento? Argomenti che sono stringhe vuote o percorsi a cartelle che non esistono?

Quando scopri bug, aggiungi un caso di test prima correggi il bug in modo da poterlo duplicare. Risolvi il bug e verifica che il tuo caso di test passi ora. Quando aggiungi nuove funzionalità puoi fare la stessa cosa: aggiungi un test prima aggiungendo la nuova funzione. Dovrebbe fallire, fino a quando non funzionerà. Questo è noto come TDD, o Test Driven Development.

Passaggio 4: impara

Una volta che hai dimestichezza con ciò, puoi iniziare a guardare altri strumenti per semplificare la procedura. Ad esempio, cetriolo o la struttura del robot sono buone scelte per i test di accettazione, ma ce ne sono molti, molti altri.

    
risposta data 22.01.2014 - 19:16
fonte

Leggi altre domande sui tag