Integration Test con Maven e Docker

docker

Non è la prima volta che parliamo di integration test, croce e delizia dello sviluppo. Sono complessi da fare perché richiedono la compartecipazione dei sistemi necessari all’applicazione che siamo sviluppando. Avevamo visto come nel ciclo di build di Maven l’uso del plugin failsafe ci aiuta ad eseguire questo tipo di test nella fase giusta. Abbiamo visto poi come Arquillian permette...
Continue reading...

Testing di app Android con Dagger 2, Mockito e una rule JUnit

La Dependency Injection è la chiave per ottenere codice testabile, sfruttando questo costrutto è semplice sostituire un oggetto con un mock per cambiare e verificare il comportamento di una app Android o di un qualunque software. Dagger 2 è una libreria che permette di gestire le proprie classi sfruttando la depenncy injection, per le sue caratteristiche (prima fra tutte la...
Continue reading...

Maven Integration Tests

I test di integrazione sono una parte molto importante dello sviluppo di un software: permettono di uscire dal piccolo mondo del test di unità per vedere se tutto il puzzle sta in piedi. Maven, nel suo ciclo di vita, riserva addirittura quattro fasi a questo scopo ed un plugin realizzato ad hoc. Vediamo di che si tratta. Maven Failsafe Plugin...
Continue reading...

Testing del codice e TDD: due libri da leggere

Spesso su cosenonjaviste condividiamo le nostre letture informatiche, in questo post vedremo una breve recensione di due libri “scoperti” da poco. Entrambi i libri parlano di testing del codice anche se da due punti di vista diversi. Il primo libro, Growing Object-Oriented Software, Guided by Tests, parla di scrittura di codice nuovo con un approccio basato sui test. Il secondo,...
Continue reading...

JUnit Test the REST!

Ormai sviluppare servizi web secondo l’architettura REST sembra una moda. Era quello che in fondo pensavo prima di leggere REST in Practice, un libro da leggere assolutamente per capire come approcciarsi a questo nuovo modo di accesso a risorse web. Che poi tanto nuovo non è… bastava accorgersi che HTTP aveva già tutto quello che occorreva per essere un “Application Protocol” e non semplicemente un “Transport Protocol” come siamo abituati ad usarlo....
Continue reading...

JBoss e Web Services SOAP? Ci pensa JBossWS!

Un po’ come il dilemma shakespeariano, la scelta del tipo di servizio web attanaglia la vita di un architetto software: “REST o SOAP”? A discapito della letteratura, il dilemma sembra risolto a favore di REST, vuoi un po’ per moda, un po’ perché effettivamente è più facile da gestire e sfrutta appieno le tecnologie esistenti, senza aggiungere strati di XML su HTTP come fa SOAP. In effetti, SOAP è un protocollo sul protocollo, mentre REST sfrutta totalmente HTTP e i suoi verbi. In due post precedenti abbiamo già visto come sia facile creare e consumare servizi SOAP per Tomcat. Quando però passiamo da Tomcat ad un Application Server (AS) Java EE 6 compliant, abbiamo la possibilità di scrivere servizi sia REST che SOAP con qualche semplice annotazione, grazie alle specifiche JAX-WS e JAX-RS implementate nativamente da questi AS. Prendiamo JBoss 6 per esempio e vediamo effettivamente quanto è semplice realizzarli....
Continue reading...