2010-01-05 7 views
5

Mon environnement entier, java, js et php sont configurés avec notre serveur d'intégration continue (Hudson). Mais comment puis-je sortir la base de données dans le mix? Je souhaite déployer de nouvelles bases de données MySql pour les tests unitaires, le développement et le qa.intégration continue avec mysql

Et puis je voudrais comparer le développement à la production et avoir un script de mise à jour qui serait utilisé pour la sortie.

Répondre

0

La base de données en mémoire HyperSQL (http://hsqldb.org/) n'est-elle pas mieux adaptée à l'exécution de vos tests?

+0

Je ne cherchais pas à accélérer les tests, mais cela va aider. En ce moment j'essaye d'effectuer quelques essais de système sur la cible réelle. – Mindgauge

1

Vous pouvez écrire un script dans Ant pour faire tout cela et l'exécuter pendant la construction.

+0

Je planifie définitivement d'automatiser avec Ant, j'ai juste besoin de quelques tâches qui peuvent effectuer la différence et d'autres logique. – Mindgauge

1

Peut-être examiner les migrations de base de données telles que migrate4j.

+0

intéressant. J'espérais une certaine automatisation, mais d'après ce que je vois, cela ressemble à une bonne solution. – Mindgauge

3

Je voudrais regarder la liquibase (http://www.liquibase.org /). C'est un outil de migration db basé sur Java open source qui peut être intégré dans votre script de construction et peut gérer la différence de DB. Je l'ai déjà utilisé pour gérer les mises à jour db sur un projet avant avec beaucoup de succès.

+0

cela ressemble à ce dont j'ai besoin. J'aime l'intégration de la fourmi. – Mindgauge

1

Écrivez un script qui configure votre base de données de test. Exécutez-le à partir de votre outil de construction, quel qu'il soit, avant que vos tests de construction ne soient exécutés. Je le fais manuellement et ça marche plutôt bien; toujours en l'intégrant dans maven. Ça ne devrait pas poser trop de problèmes.

0

Pour la gestion des migrations à votre base de données sechema entre les versions, vous pourriez faire bien pire que d'utiliser les migrations Scala: http://opensource.imageworks.com/?p=scalamigrations

C'est un outil open source que j'ai trouvé à bien intégrer dans un écosystème de développement Java et a un attrait supplémentaire si l'une de vos équipes a cherché des moyens de présenter Scala.

Il devrait également être capable de vous construire une base de données à partir de zéro, à des fins de test.

Questions connexes