background preloader

Utils

Facebook Twitter

Jboss. I had the privilege of attending Java One in San Francisco this month. I had two talks this year. Talks: 1) Venue: JBoss Booth. Title: Trusted Security with PicketBox and PicketLink 2) Venue: Regular Session. Title: Experiences with Java EE Paas In my view, this was a great conference for me. DBunit Getting Started. TestNG et ses DataProvider. J’aime beaucoup TestNG, et je l’utilise plutôt que JUnit depuis des années. D’abord, il s’agit d’un outil développé par un français, Cédric Beust, après tout, on a le droit d’être un peu chauvin !

Ensuite, j’ai toujours trouvé que les fonctionnalités offertes par ce framework étaient supérieures à JUnit, pourtant largement plus utilisé. Cher et précieux lecteur, je te propose, dans cet article d’éviter de démarrer une nouvelle polémique dont le net est si friand, mais plutôt de te présenter une fonctionnalité particulièrement puissante de TestNG : les DataProvider. Utiliser des données de test en nombre Tester un algorithme complètement n’est pas toujours une question triviale. Faisons un inventaire rapide de ce qu’il faut faire. Pouvoir spécifier ces cas de tests, et notamment les enrichir, indépendamment des méthodes tests qui les utilisent s’avère particulièrement utile, pour ne pas dire quasiment indispensable. Notion de DataProvider C’est là que les DataProvider nous viennent en aide. A Java geek »des tests unitaires de base de données avec DBUnit, Spring et TestNG.

I really like Spring, so I tend to use its features to the fullest. However, in some dark corners of its philosophy, I tend to disagree with some of its assumptions. One such assumption is the way database testing should work. In this article, I will explain how to configure your projects to make Spring Test and DBUnit play nice together in a multi-developers environment. Context My basic need is to be able to test some complex queries: before integration tests, I’ve to validate those queries get me the right results. These are not unit tests per se but let’s assilimate them as such. I also have some constraints: Considering the last point, our organization let us benefit from a single Oracle schema per developer for those “unit-tests”. Basic set up Spring provides the AbstractTestNGSpringContextTests class out-of-the-box. The structure of such a test would look like this: Readers familiar with Spring and TestNG shouldn’t be surprised here.

Bringing in DBunit Per-user configuration with Spring. The Prezenter - Prezi related help, advice and ideas : The Prezenter | Online Prezi Training – Program outline. Orchestra: Open Source BPEL / BPM Solution - Orchestra : The Open Source BPEL solution. The EasyBPEL Open Source Project on Ohloh. Petals Link | éditeur open source de solutions d'intégration SOA. Spring Roo. Instant Results - Making Java Fun Spring Roo is a lightweight developer tool that makes it fast and easy to deliver instant results. Best of all, you code 100% in Java and get to reuse all your existing Java knowledge, skills and experience.

Spring Roo differs from other productivity tools by focusing on: Rapid results100% develop in JavaEasy-to-useFast and simple to removeTotally compromise freeActive, helpful communityComprehensive technology integrationsExtension points via Roo add-onsSpring-certified architecture Read the book Getting Started with Roo written by Josh Long and Steve Mayzak. Ken Rimple and Srini Penchikala have also written the definitive Roo reference book called Spring Roo in Action available for purchase from Manning Publications. Exciting Features - SOLR, CLOUD, FLEX,... MVC applications with JPA are a breeze with Roo, but it also eases your journey into the next generation of technology. Zero Risks - Productivity Without Compromise Quick Start Pre-requisites. Home · harrah/xsbt Wiki. Akka: Event-driven Middleware for Java and Scala.

Event-driven Middleware for Java and Scala Akka is an asynchronous event-driven middleware implemented in Scala for building high performance and reliable distributed applications. Akka decouples business logic from low-level mechanisms such as threads, locks and non-blocking I/O. Java and Scala program logic lives in lightweight Actor objects, which send and receive messages in a reactive fashion.

With Akka, you can easily configure how Actors will be created, destroyed, scheduled, and how to deal with failures. Fault-tolerance Akka provides fault-tolerance based on supervisor hierarchies. Simpler Concurrency Threads and non-blocking I/O are complex and error-prone to build by hand, which means they waste your time. Scalability Scale out on multicore servers and multiple nodes using Akka's support for asynchronous message passing. Scala & Java APIs In keeping with the pragmatism of the rest of the Typesafe Runtime, Akka has a Java API in addition to a Scala API.

Akka Team Blog. Alphagov (GOV.UK) Grosser/parallel_tests. Ant Integration. About DbUnit. NoThunes. NoThunes, tests en tout genre et qualité de code Avec un peu de retard sur les autres, voici le cinquième article de cette série sur Grails. Les exemples de prise en main du framework Grails ne manquent pas sur la toile. Nous allons tenter de dépasser les Getting started en déroulant la réalisation d’une application web de bout en bout :ConceptionRéalisationMise en productionEvolutions et maintenanceParce qu’il est toujours plus agréable de travailler sur du concret, nous allons réaliser pas à pas une plateforme de musique libre en ligne, que nous baptisons : Projet NoThunes, en clin d’oeil à une autre célèbre plateforme de musique payante.

Tout le code du projet est disponible sur GitHub. Ce projet est donc Open Source mais aussi « Open méthode » puisque je vous ferai partager toutes les étapes de conception/réalisation au travers d’une série d’article. Spring, Hibernate, DBUnit et Surefire – Parallélisez vos tests. Les DAO (Data Access Object) ou repository des applications contiennent souvent de l’information importante sur la façon dont les données d’une base doivent être consultées. Cette information prend la forme d’une logique métier qui est encodée dans un ou plusieurs langages, souvent un langage déclaratif (SQL, HSQL, JPQL, etc.) et un langage impératif (Java, Groovy, Scala, etc.). Tester cette logique d’accès polyglotte peut s’avérer complexe et lent car ce type de test se prète mal aux techniques classiques de mock et nécessite plutôt l’écriture de tests d’intégration qui chargent une partie du contexte réel d’exécution.

Par conséquent, les tests de cette couche sont parfois délaissés, voire abandonnés. Cet article se propose de vous montrer comment réaliser de tels tests, avec un niveau d’isolation suffisant pour la parallélisation dans un processus multithread, tout en essayant de trouver le meilleur compromis avec le temps d’exécution de chaque test. Introduction Structure du projet. Ca Scrum ! Welcome. TestNG Now available Click for more details. Cédric Beust (cedric at beust.com) Current version: 6.8.1 Created: April 27th, 2004 Last Modified: March 30th, 2013 TestNG is a testing framework inspired from JUnit and NUnit but introducing some new functionalities that make it more powerful and easier to use, such as: Annotations. TestNG is designed to cover all categories of tests: unit, functional, end-to-end, integration, etc... I started TestNG out of frustration for some JUnit deficiencies which I have documented on my weblog here and here Reading these entries might give you a better idea of the goal I am trying to achieve with TestNG.

Here is a very simple test: SimpleTest.java The method setUp() will be invoked after the test class has been built and before any test method is run. Things to note: Once you have compiled your test class into the build directory, you can invoke your test with the command line, an ant task (shown below) or an XML file: build.xml Use ant to invoke it: Bug reports. Ca Scrum ! » Blog Archive » Selenium 2 et son écosystème. Tests et automatisation : pourquoi et comment ? Ou comment j’ai été convaincu pour Selenium. Aujourd’hui, j’ai eu la chance de participer à une séance de présentation et d’échanges, inter-services, autour du sujet « tests et automatisation » : vaste sujet !

La séance, proposée et animée par Laurent, était sur la forme de « forum ouvert » (« open space » pour les anglophones), un peu préparé pour guider la séance. Une introduction, avec quelques généralités sur les tests, a permis d’introduire les termes comme JUnit, Selenium, Jenkins, Sonar, … ainsi que d’aborder très rapidement la question « pourquoi des tests ? » en évoquant : la sérénité, la non-régression, le codage plus rapide, etc … Ensuite Laurent a proposé et présenté plusieurs sujets, auxquels les participants en ont ajouté quelques uns. Après une séance de vote (type « buy a feature »), une première session avec 2 ateliers en parallèle s’est mise en place : Présentation et démonstration SonarLes tests, par quoi commencer ?

Mes expérimentations ne tarderont pas ! En un mot : génial ! Apache ODE – Apache ODE™ Mocks & Stubs : Leurres des Tests « Choses à faire. Ces dernières années, les tests unitaires se sont imposés comme une technique obligatoire pour assurer la qualité d’un projet de développement. Pour simplifier le travail, de nombreux frameworks ont fait leur apparition pour à peu près chaque technologie. Cependant, certains comportements d’une application sont difficiles à tester par ce biais … Voici un « Mockingbird » ! (Photo par MrBobBaker) Voici une liste des cas où un framework standard (de type xUnit) n’est pas forcément approprié : Les tests portent sur des parties du programme très dépendantes des données Imagineons deux comportements à tester, chacun modifiant des données sémantiquement proches. Comment s’assurer qu’un test du premier comportement soit toujours valide après avoir testé l’autre comportement ? Plusieurs solutions sont apparues au fil du temps.

Les « Dummy objects » Des objets factices sont passés à l’appel du comportement. Les « Stubs » ( ! Exemple, voici l’interface du composant à tester : Les « Fake objects »