J'utilise DbUnit avec Unitils, ce qui fonctionne très bien la plupart du temps.DbUnit: problème avec la génération de l'incrément
Aujourd'hui, j'ai trouvé un problème étrange.
Situation est:
- -je utiliser Hibernate, et ont id avec le générateur "incrément":
<id name="Id"> <generator class="increment"/> </id>
- Je prépare ensemble de données de test, où id maximale est 5.
- J'utilise une stratégie de chargement clean-insert.
- J'ai deux méthodes de test
test1
ettest2
, chacune ajoutant une ligne dans cette table. - Après la méthode
test1
, la ligne nouvellement ajoutée a id = 6. - Après la méthode
test2
, la ligne nouvellement créée a id = 7.
Tout est OK et je comprends pourquoi c'est comme ça. C'est un problème du point de vue de la maintenance. Si jamais j'ajoute la troisième méthode de test entre les deux, la méthode test2
échouera soudainement même si rien n'a changé, juste parce que row aura un ID différent.
Existe-t-il de toute façon que je puisse forcer DbUnit ou Hibernate à calculer la prochaine valeur d'id avant chaque méthode de test?
correctement dit aussi bien – Bozho
Le nettoyage de la table n'est normalement pas suffisant; Vous devrez peut-être également réinitialiser la séquence d'ID de la table. – pimlottc