Progetto di Ingegneria del Software 2 2012/2013 SWIMv2 Guida al Testing Docente: Prof. Luca Mottola Davide Brambilla Antonio Caputo Paolo Caputo 1
Indice 1 Introduzione 1.1 Materiale fornito................................ 2 2 Casi di Test 2.1 Login............................................ 3 2.2 Funzionalità Utente Non Registrato................... 4 2.3 Funzionalità Utente Registrato.................... 5 2.4 Funzionalità Amministratore........................ 9 2
1. Introduzione 1.1 Materiale fornito Per poter eseguire il testing sul sistema sono stati forniti i seguenti documenti: Documento di Analisi dei Requisiti (RASD), Documento di Design (DD), Codice sorgente dell'applicazione. 3
Casi di test I casi di test sono le funzionalità principali che devono esser testate per poter avere la certezza che il programma funzioni come desiderato. La stesura dei casi di test è stata effettuata sulla base dei casi d uso specificati nel RASD. 2.1 Login In questa sezione ci concentreremo sul login: sia per quanto riguarda il login dell amministratore sia per quanto riguarda quello dell utente registrato. Permettere ad un amministratore di accedere al proprio spazio riservato. Operazione accessibile unicamente dalla Homepage del sistema. Username e password ( admin, admin ). Il sistema autentica l amministratore. Il possibile errore che possiamo incontrare in questa operazione è l erroneo inserimento delle credenziali di accesso. In questi caso il sistema informa l'utente dell errore commesso e rimane sulla Homepage del sistema dando così all utente la possibilità di riprovare il login. Permettere ad un utente registrato di effettuare il login. Operazione accessibile unicamente dalla Homepage del sistema. Username e password ( corretti e già presenti nel sistema). Il sistema autentica l utente e gli mostra il suo profilo. Ora l utente ha libero accesso alle funzionalità a lui riservate. Il possibile errore che possiamo incontrare in questa operazione è l erroneo inserimento delle credenziali di accesso. In questi caso il sistema informa l'utente 4 dell errore commesso e rimane sulla Homepage del sistema dando così all utente la possibilità di riprovare il login.
2.2 Funzionalità Utente Non Registrato Due sono le funzionalità a disposizione di questa categoria di utenti : la prima riguarda, come ovvio, la possibilità di registrarsi al sistema; la seconda invece permette all ospite del sistema di effettuare la ricerca di un aiuto all interno degli utenti del sito. Permettere ad un ospite di registrarsi al sistema. Per aver accesso a questa funzionalità l ospite deve cliccare su Register nella Homepage del sistema. Dati anagrafici della persona che richiede la registrazione ( Nome, Cognome, Data di nascita) e credenziali di accesso ( Username, Password ed E-Mail). Il sistema memorizza nel database i dati riguardanti il nuovo utente e autentica quest ultimo al sistema. Ora la pagina mostrata all utente sarà il suo stesso profilo contenente tutte le sue informazioni. Possibili errori: inserimento della E-Mail in formato scorretto, username già esistente. Il sistema provvederà ad avvertire dell errore l utente con un messaggio. Ambiente operativo Permettere ad un ospite di cercare aiuto all interno del sistema. Per aver accesso a questa funzionalità l ospite deve cliccare su Search help without registration. nella Homepage del sistema. Selezione di un abilità a disposizione nel menu a tendina. Le abilità a disposizione sono tutte e sole le abilità presenti nel sistema, da usare come criterio per la ricerca. Il sistema prende dal database i dati riguardanti gli utenti che corrispondono ai criteri selezionati e li mostra all ospite. Non sono possibili errori perché l utente può scegliere un abilità solo tra quelle esistenti. Può risultare una lista vuota nel caso non esistano utenti che hanno l abilità selezionata. 5
2.3 Funzionalità Utente Registrato Da qui in avanti, parlando di utente registrato, diamo per scontato che è stato effettuato il login con delle credenziali valide e che il sistema abbia convalidato il login. Ci troviamo quindi nel contesto riservato all utente registrato. Cercare aiuto all interno dei propri amici o dell intera comunità di Swim Cliccare su Search Help nella colonna di sinistra. Per effettuare la ricerca è necessario selezionare un abilità tra quelle messe a disposizione del sistema e scegliere una delle due possibilità di ricerca: cercare un utente con quella abilità tra i propri amici o anche tra tutti gli utenti registrati che non fanno parte delle proprie amicizie. Il sistema prende dal database i dati degli utenti che corrispondono alla ricerca effettuata e li restituisce all utente mostrando a quest ultimo l intera lista di utenti trovati. Il sistema può non trovare alcun utente; L utente che sta effettuando la ricerca non può commettere errori dovuti ad inserimenti; Nel caso di ricerca tra tutti gli utenti, accanto al nome dell utente ci possono essere tre bottoni: Visualizza profilo, invia richiesta di amicizia attiva o invia richiesta di amicizia bloccato a seconda che i due amici siano amici, non lo siano o la richiesta tra i due sia ancora irrisolta. 6
Cercare un utente tra tutti gli utenti di Swim. Cliccare su Search Users nella colonna di sinistra. Per effettuare la ricerca è necessario inserire nella barra di ricerca una parola o parte di essa contenuta nel nome, cognome o username dell utente cercato. Il sistema prende dal database gli utenti che hanno la parte di parola cercata all interno del suo nome, del suo cognome o dell username e restituisce ( esattamente come per la ricerca dell aiuto) all utente. Se non si immette alcun testo nella barra di ricerca il sistema restituisce l intera lista di utenti; Se nessun utente contiene la parola cercata il sistema non restituirà risultati; Accettare/rifiutare richieste di amicizia. Cliccare su visualizza richieste di amicizia nella colonna a sinistra. Verrà aperta una pagina con la lista di richieste. Tra queste si può scegliere se accettare o rifiutare la singola richiesta. Il sistema aggiunge l utente che ha mandato la richiesta di amicizia alla lista di amicizie di quello che l ha accettata (nel caso in cui è stata accettata). Rimuove la richiesta senza aggiungerlo se invece l amicizia è stata rifiutata. Se la richiesta di amicizia è diretta (non effettuata tramite suggerimento) e viene accettata, allora il sistema deve mostrare all utente i suggerimenti. 7
Dichiarare/rimuovere un abilità tra quelle possedute. Cliccare nella colonna a sinistra sulla voce Declare/Remove Ability. Verrà visualizzato un menu a tendina con tutte e sole le abilità presenti nel sistema. L utente ha la possibilità di sceglierne una e cliccare poi sul pulsante Declare. Oltre al menu a tendina viene mostrata la lista delle abilità possedute dall utente. Ogni abilità è associata ad un bottone Remove, sul quale è possibile cliccare per rimuovere l abilità. Il sistema aggiunge ( nel caso di Declare ) o toglie ( nel caso di Remove) l abilità selezionata dalla lista di abilità possedute dall utente. Nella pagina attuale verranno visualizzate le abilità attuali tenendo conto dell ultimo cambiamento appena effettuato. Se l utente sceglie di aggiungere un abilità che già possiede il sistema non notificherà l errore, ma semplicemente non modificherà lo stato delle sue abilità. Proporre di aggiungere un abilità all amministratore (Ability request). Cliccare nella colonna a sinistra sulla voce Ability request. Verrà visualizzata una pagina statica che contiene due input form che l utente dovrà compilare prima di cliccare sul bottone di submit. Nei due corrispettivi input form l utente dovrà inserire il nome dell abilità e la descrizione di quest ultima. Non ci sono vincoli sul nome, che sarà quello che poi diventerà il nome dell abilità. La descrizione invece è una motivazione per il quale l amministratore dovrebbe accettare la richiesta, oppure una descrizione dell abilità che si desidera aggiungere. La richiesta viene inviata all amministratore (che potrà visualizzarla) ma il sistema mantiene l utente nella pagina di invio richiesta di abilità. 8
L utente DEVE inserire sia il nome che la descrizione. Essi non potranno infatti essere nulli. Visualizzare la propria lista di amicizie. Cliccare, nella colonna a sinistra, la voce visualizza lista di amici. Il sistema reindirizza l utente alla lista delle amicizie che ha stretto ( non irrisolte ). Nessuna. Visualizzare il profilo di un utente. Cercare un utente e cliccare su visualizza profilo; Cercare aiuto e cliccare su visualizza profilo; Visualizzare la lista di amici e cliccare su visualizza profilo. Il sistema reindirizza l utente che ne ha fatto richiesta al profilo al quale è interessato. L utente deve necessariamente esser amico dell utente del quale vuole visualizzare il profilo per poterlo visualizzare. 9
2.4 Funzionalità amministratore: L amministratore ha meno funzionalità dell utente registrato. Di seguito vengono illustrate le funzionalità da testare per quanto riguarda l amministratore. Aggiungere abilità manualmente. Nella Homepage dell amministratore troviamo un input form accompagnato da un submit form Add ability. Per aggiungere l abilità è necessario riempire l input form e premere il pulsante di cui abbiamo appena parlato. L input deve essere un nome da dare all abilità. Il sistema aggiunge un abilità all elenco di quelle presenti nel sistema(che erano già visualizzate nella Homepage dell amministratore). Anche in questo caso, se l amministratore cerca di aggiungere un abilità già esistente il sistema non dà errori, ma semplicemente non aggiunge l abilità in questione. Rimuovere un abilità presente. Nella Homepage dell amministratore troviamo una lista di abilità. Le abilità che si possono trovare sono tutte le abilità presenti nel sistema. Ad ogni abilità è associato un pulsante Remove che bisogna premere per rimuovere l abilità da quelle presenti nel sistema. Il sistema rimuove l abilità dall elenco e aggiorna la visualizzazione dell amministratore. Nessuna. 10
Rispondere positivamente/negativamente ad una richiesta di aggiunta abilità. Nella Homepage dell amministratore troviamo il bottone : show ability requests. Per visualizzare le richieste in arrivo bisogna cliccare su quest ultimo. La lista di richieste sarà corredata dai pulsanti Add e Remove riferiti uno all abilità e l altro alla request. Per effettuare l aggiunta o la rimozione dell abilità è necessario premere il pulsante corrispondente. Il sistema rimuove la request dall elenco. Nel caso in cui la risposta dell amministratore fosse positiva la lista di abilità viene aggiornata aggiungendo l abilità in questione. Nessuna. 11