Mot-clé - java

Fil des billets - Fil des commentaires

CTRL+SHIFT+G

eclipse.jpg

eclipse.jpgQuand du code me parait obsolète, je vérifie qu'il n'est pas utilisé en lançant un CTRL+SHIFT+G sur mon workspace Eclipse, avant de le supprimer.

Cette manoeuvre m'a trahie plusieurs fois :

  1. la classe était instanciée dans Spring
  2. la classe était utilisée... mais sur un projet qui n'était pas ouvert dans mon workspace. Ouvrir tous les projets juste pour cela a quand même un coût non négligeable. De plus, la manoeuvre n'est pas possible quand on a plusieurs branches (les différents projets portant le même nom).
  3. la méthode était utilisée dans de l'introspection. C'est là que je me dis, décidément, la réflection pose un véritable problème pour le refactoring.

Des tests d'intégration en JUnit ou Fitnesse peuvent révéler le premier souci. On se rend compte des deux autres à un moment ou un autre mais trop tard pour facilement identifier le problème.

Lire la suite

JMockit : comment migrer vers la version 0.97 ou plus

Petit essai express En suivant la documentation officielle de migration, voici ce qu'il en ressort. Concernant le paramètre javaagent qui ne serait plus nécessaire, ce n'est pas si évident... Que ce soit avec Java 5, 6 avec ou sans la nouvelle annotation @RunWith(JMockit.class), mes tests semblent  […]

Lire la suite

JMockit Core | Expectations : creer une implémentation vide d'une interface?

Il y a les objets que l'on souhaite mocker parce que l'on en attend des choses (que telle méthode soit appelée, avec tel paramètre) et les objets que l'on souhaite simplement bouchonner betement, pour affranchir notre test unitaire des dépendances de l'objet testé.

Les expectations de JMockit rempliront le premier besoin. La méthode newEmptyProxy de JMockit comblera des besoins plus simples, comme celui d'avoir une implémentation vide d'une interface.

Lire la suite

JMockit Expectation : comment mocker une méthode ?

JMockit Annotation et JMockit Core impose la définition d'une classe de mock supplémentaire. JMockit Expectation permet d'effectuer des expectations sans redéfinir de classes de mock, même s'il a d'autres limitations (l'impossibilité de mocker un constructeur par exemple, ou une methode de classe abstraite).


Documentation officielle : https://jmockit.dev.java.net/javadoc/mockit/Expectations.html

Lire la suite

JMockit Annotation | Core : comment mocker un initialiseur static?

Les blocs statiques peuvent devenir un véritable cauchemar lorsque nous essayons d'introduire des tests sur du code existant. Le bloc étant statique, nous avons beau mocker, il est tout de même appelé. Avec JMockit, il devient possible de mocker aussi ces blocs là !

Lire la suite

JMockit Annotation : comment mocker une méthode de la classe qui est testée?

Nous testons la méthode doSport() de HumanBeing. Nous voulons que cette dernière appelle la méthode dress();

public class HumanBeing extends AbstractLivingBeing {
	protected void doSport(){
	}
	
	protected void dress(){
	}
}

Autrement dit, nous avons besoin de solliciter la véritable méthode doSport() mais de mocker dress().

Lire la suite

JMockit : Installation et usage

Première étape : télécharger le jar sur le site de JMOCKIT : https://jmockit.dev.java.net/

  • Avec Maven

Le repository maven http://mvnrepository.com n'hebergeant pas JMockit, il faut le déployer manuellement sur son repo et créer un pom.xml tout seul comme un grand. Pas de panique, d'autres gens l'ont fait pour nous: http://stufftohelpyouout.blogspot.com/2008/10/maven-2-java-attach-api-and-jmockit.html

Lire la suite

Haut de page