| dalla versione 6.5.2680 - modificato il 28/11/2013 - link - english
|
Introduzione
Proprietà, funzioni e procedure utilizzabili run-time per eseguire e verificare il test dell'applicazione.
Il modulo di
Test nasce con lo scopo di rendere più efficiente il test delle applicazioni e di ridurne il tempo.
Il test di un'applicazione è un'operazione lunga e delicata che solitamente prende tanto tempo quanto lo sviluppo, e che inoltre deve essere rieseguita ogni volta che l'applicazione viene modificata.
In più effettuare il test di un'applicazione web è ancora più difficile in quanto confrontare il codice HTML prodotto non è indicativo, e paragonare la visualizzazione di parti di visualizzazione nel client è un metodo più corretto ma di difficile applicazione. Per rispondere al problema il modulo confronta lo stato interno delle applicazioni, essendo infatti integrato è a conoscenza dell'attivazione dei campi, l'abilitazione dei bottoni, i dati contenuti nei pannelli, ecc.
Il modulo permette la registrazione di una
sessione utente originale, il suo
replay anche su versioni diverse dell'applicazione, e l'identificazione automatica delle differenze tra un'esecuzione e l'altra. Sia durante la registrazione della sessione utente originale che durante l'esecuzione dei test viene memorizzato lo stato interno dell'applicazione, ed è proprio grazie a queste informazioni che è possibile ottenere una verifica automatica dei risultati.
L'uso del modulo si divide quindi in tre fasi principali:
-
Registrazione: durante la registrazione lo sviluppatore non ha altro da fare che utilizzare normalmente l'applicazione, come se effettuasse un primo test manuale. Tutte le azioni dell'utente vengono memorizzate per il replay.
-
Replay: per effettuare il test dell'applicazione non occorre far altro che lanciarla tramite un'apposita interfaccia, facendole usare una qualunque versione dell'applicazione target, con o senza l'intervento dell'operatore. Lo stato interno degli oggetti viene registrato e salvato sul database.
-
Analisi differenze: è possibile effettuare un confronto tra le sessioni registrate e l'originale, mettendone in risalto le differenze di comportamento.
Requisiti
-
La registrazione della sessione originale, dei test e dei risultati viene salvata su database, perché l'applicazione sia un grado di utilizzare correttamente il modulo è quindi necessario che il database contenga alcune tabelle. E' possibile copiarle dalla cartella DTT del database Teamworks contenuto nel progetto di esempio.
-
L'applicazione di cui si vuole effetture il test e l'applicazione che gestisce i test devono usare lo stesso database.
Registrare un test
Per registrare una sessione originale è necessario predisporre un'interfaccia utente, è possibile copiare i form dell'applicazione Teamworks contenuta nel progetto di esempio.
Utilizzando il form
Test Suite è possibile definire i test applicativi, predisponendone l'ordine di esecuzione e organizzandoli gerarchicamente.
Sono disponibili i seguenti comandi:
-
Registra Sessione: l'applicazione (nell'esempio è EsempiLearning) viene lanciata usando l'URL specificato. Per registrare la sessione originale l'utente deve utilizzare l'applicazione normalmente, la sessione verrà salvata alla chiusura dell'applicazione con il bottone di logoff.
-
Copertura: crea un file contenente l'elenco dei GUID di tutti gli oggetti del progetto che sono stati testati nelle sessioni originali. Caricandolo in IN.DE con il comando "Apri file copertura" è possibile avere la visione d'insieme su quali componenti sono verificati dai test e quali no.
-
Esegui Suite: apre la schermata di esecuzione Test per la valorizzazione dei parametri e l'avvio dell'esecuzione.
Affianco ai bottoni "Registra Sessione" è visibile il flag "E-learning", per conoscerne l'utilizzo si rimanda all'articolo
Learning.
Nell'esempio è stata impostata una Test Suite per testare l'applicazione Esempi Learning, disponibile all'indirizzo nell'immagine in basso a destra. Le applicazioni di esempio EsempiLearning e Teamworks utilizzano lo stesso database
Rieseguire un test
Cliccando sul bottone "Esegui" tutta la suite viene rieseguita per testare l'applicazione target, è quindi possibile memorizzare più di un test e poi effettuarli tutti insieme.
L'applicazione in test viene aperta in un'altra finestra ed è possibile procedere in tre modalità:
-
Passo passo: l'utente che effettua il test ne comanda manualmente l'avanzamento, mediante una speciale toolbar.
-
Tempo reale: l'applicazione viene rieseguita replicando esattamente la sessione di test, rispettando anche i tempi di esecuzione.
-
Accelerato: l'applicazione viene rieseguita replicando esattamente la sessione di test, effettuando tutte le operazioni più velocemente.
Toolbar disponibile per il controllo dei test, vedere il tooltip dei comandi per la descrizione
Analisi delle differenze
Per ogni test effettuato è possibile visualizzare il debug della sessione di lavoro, o ancor meglio confrontarlo con quello salvato in fase di registrazione del test. Per questo è disponibile un esempio della schermata di TeamWorks "Risultati Test", reperibile nel progetto di esempio al link sottostante.
Sono disponibili i seguenti comandi:
-
Apri Sessione: mostra il debug della sessione di test selezionata.
-
Differenze: mostra una schermata di debug simile a quella usuale, ma che confronta la sessione di test originale e quella rieseguita recentemente.
Nell'elenco delle richieste sono mostrate quelle comuni ad entrambi i test, selezionandone una viene mostrato a sinistra il debug della sessione di test originale e a destra quello del test rieseguito.
-
Sostituisci: sostituisce la sessione originale con l'esecuzione del test selezionata, in questo modo viene spostato il termine di paragone. E' da utilizzare quando viene rilasciata una nuova versione all'utente, così che la sessione originale rappresenti sempre la versione applicativa in produzione.
Esempio di come viene mostrato il debug cliccando sul bottone "Differenze"
Elenco delle funzioni
Check DTT Diff
|
Mostra il debug di due sessioni di test specificate e ne evidenzia le differenze
|
Dump GUIDs
|
Salva su file tutti i GUID di tutti gli oggetti visti nella sessione
|
Cosa ne pensi?
Ti sono rimaste delle domande su punti che questo articolo non ha trattato? Pensi che sia utile aggiungere una nota all'articolo? Aiutaci a migliorare la documentazione di Instant Developer scrivendo il tuo commento nei campi qui sotto.