XmlBlackBox La presentazione Alexander Crea 15 Giugno 2010 La presentazione Alexander Crea 15 Giugno...

Post on 03-May-2015

212 views 0 download

Transcript of XmlBlackBox La presentazione Alexander Crea 15 Giugno 2010 La presentazione Alexander Crea 15 Giugno...

XmlBlackBoxLa presentazione Alexander Crea

15 Giugno 2010La presentazione Alexander Crea

15 Giugno 2010

http://code.google.com/p/xmlblackbox/

XmlBlackBox http://code.google.com/p/xmlblackbox/

E’ un framework Java per l'implementazione di

test in ambienti eterogenei

Che cos’è

XmlBlackBox http://code.google.com/p/xmlblackbox/

Cosa può fare

Testare applicazioni web (con Selenium)Testare Web ServicesVerificare il contenuto di file XML e effettuarne la validazione

Verificare il contenuto di un databaseEseguire funzionalità non previste utilizzando i Plugin

Includere uno stesso insieme di passi in test case diversi

Condividere le variabili create durante il flusso del test case

Impostare attese condizionate per i processi asincroni

XmlBlackBox http://code.google.com/p/xmlblackbox/

I vantaggi…

…nell'implementazione del test…nell'implementazione del testIl tempo di sviluppo di un test case diminuisce all'aumentare del

numero dei casi già sviluppati, attraverso la possibilità di includere uno stesso insieme di passi già implementato per altri test.

L'integrazione di nuove operazioni, non contemplate nel framework di base, attraverso la possibilità di sviluppare plugin ad hoc.

La gestione del server Selenium è completamente guidata dal framework.

La verifica di un database viene realizzata semplicemente attraverso la descrizione (in XML) delle colonne da controllare e dei dati attesi.

La chiamata ad un Web service si basa sulla generazione delle classi client (Stub) con Axis2 e sulla creazione del file xml che deve essere contenuto nel SOAP.

XmlBlackBox http://code.google.com/p/xmlblackbox/

I vantaggi…

…in caso di test falliti…in caso di test falliti

L’immediata comprensione degli obiettivi del test grazie alla capacità autodescrittiva data dal linguaggio Xml

La rapida verifica dei problemi di navigazione attraverso l'impiego di Selenium che rende semplice l'individuazione del problema emerso

La semplice verica dell'esito delle chiamate ai web services attraverso il log del file di input spedito e del file di output ricevuto

I ridotti tempi di verifica/correzione anche per chi non ha implementato il test case in corso di analisi

XmlBlackBox http://code.google.com/p/xmlblackbox/

I vantaggi…

… in caso di modifiche all'applicazione… in caso di modifiche all'applicazione

Le modifiche all'applicazione che richiedono interventi su test case gia sviluppati evidenziano le potenzialità dell'impiego del linguaggio XML, infatti:

- l'uso degli INCLUDE consente di intervenire in un solo, o comunque in un limitato numero di file xml, gli unici che si riferiscono alla funzionalità dell'applicazione oggetto dell'intervento

- l'uso dei tag permette di effettuare modifiche solo su singole parti del test, attraverso la sostituzione dei soli tag di cui è necessario modificare il comportamento

XmlBlackBox http://code.google.com/p/xmlblackbox/

L’uso dei plugin

Che cos'è un pluginChe cos'è un plugin

E' un classe java che implementa una specifica interfaccia

Il plugin ha la funzione di ampliare ed integrare il framework di base, permettendo di inserire

all'interno del flusso del test nuove operazioni.

XmlBlackBox http://code.google.com/p/xmlblackbox/

L’uso dei plugin

Un esempioUn esempio

<RUN-PLUGIN version="1.1" class="org.xbb.plugin.EseguiProcessoAS400" > <PARAMETERS> <PARAMETER name="nomeCL" value="getDatiCliente" /> <PARAMETER name="CF" value="PCTRTF83G54H501R" /> </PARAMETERS>

</RUN-PLUGIN>

Nell'esempio viene chiamata un ipotetica procedura su AS400 che restituisce i dati del

cliente a partire dal codice fiscale.

XmlBlackBox http://code.google.com/p/xmlblackbox/

L’uso dei plugin

Come usarliCome usarli

Il frammento Xml può essere copiato in tutti i test case interessati all'operazione.

Inoltre il plugin può essere sviluppato in modo da avere comportamenti diversi a seconda dei

parametri in input definiti nel tag.

XmlBlackBox http://code.google.com/p/xmlblackbox/

L’uso del tag include

A cosa serveA cosa serve

Permette di includere lo stesso insieme di passi in test case differenti.

In questo modo può essere creata una “libreria” di operazioni descritte in file xml.

XmlBlackBox http://code.google.com/p/xmlblackbox/

L’uso del tag include

Un esempioUn esempio

<INCLUDE-FILE version="1.1" filename="/org/xbb/test/ConfigConnDerby.xml"/>

L'esempio descrive l'include della

configurazione di una connessione al database che può essere inserito in tutti i test case che la

devono utilizzare.

XmlBlackBox http://code.google.com/p/xmlblackbox/

Come collabora con Selenium

La navigazione Selenium deve essere contenuta in una classe java che implementa una

specifica interfaccia

E' sufficiente generare la navigazione selenium in codice java attraverso Selenium IDE, inserirla nella classe e creare il tag xml

SELENIUM.

XmlBlackBox http://code.google.com/p/xmlblackbox/

Come collabora con Selenium

Configurazioni particolariConfigurazioni particolari

Configurazioni di Selenium non previste dal framework possono essere gestite attraverso lo

sviluppo di un plugin.

XmlBlackBox http://code.google.com/p/xmlblackbox/

L’impiego dell’XML

PerchéPerché

Il test è autoesplicativo.La descrizione con il linguaggio Xml permette di

capire rapidamente gli obiettivi, anche a distanza di tempo o da parte di chi non ha

implementato il test case.

XmlBlackBox http://code.google.com/p/xmlblackbox/

L’impiego dell’XML

PerchèPerchè

Le caratteristiche del singolo test sono tutte contenute e descritte nel file xml e in eventuali

file inclusi.

XmlBlackBox http://code.google.com/p/xmlblackbox/

Iniziare con XmlBlackBox

XBB non costringe ad un salto nel buio.E' facilmente integrabile in una architettura di test

JUnit già presente. Al framework potrebbero essere delegate solo alcune particolari operazioni per comprenderne

le potenzialità.