2008-10-27 9 views
8

Comment répondez-vous aux questions suivantes des managers, testeurs et autres personnes de votre équipe:Intégration continue: comment reliez-vous vos builds aux exigences/tâches/bugs?

Dans quelle version le bogue n ° 829 est-il corrigé? Quelles tâches ont été accomplies dans notre version de test actuelle?

En d'autres termes, comment pouvez-vous assurer la traçabilité de vos exigences, tâches et bogues, depuis leur signalement jusqu'au déploiement? Quels processus, outils et techniques utilisez-vous pour y parvenir?

Répondre

3

Nous utilisons TRAC avec SVN dans notre entreprise et effectuer tous les jours de roulement construit DEV/STAGING & environnements STABLE avec réguliers déploiements réguliers (une fois par mois ... ISH) à un environnement de production.

Lorsqu'un bug est signalé, il est entré en TRAC et un numéro de billets (par exemple, # 1001)

Lorsque le bug est corrigé, le code est réintégrée dans SVN avec le numéro de ticket (# 1001) en les notes SVN Checkin.

Le développeur prend note du numéro de l'ensemble de modifications SVN (par exemple [5000]) et ouvre l'interface Web TRAC. Lors de la fermeture du ticket, ils placent le numéro du changeset dans les notes du ticket. De cette façon, l'enregistrement SVN référence le ticket ... et le ticket référence l'enregistrement SVN.

Nos builds quotidiens sont ensuite effectués par rapport à un ensemble de modifications SVN (par exemple, la génération d'aujourd'hui correspond à tout le set de modifications [5050]) et une note en est faite dans notre notice de déploiement.

Deployed On | Environment   | Changeset 
--------------+-------------------------+-------------------------- 
10-01-2008 | DEV     | 5100 
10-01-2008 | STAGING    | 5080 
10-01-2008 | STABLE     | 5050 
01-01-2008 | PRODUCTION    | 5000 

De cette façon, les testeurs lors de l'examen des correctifs pour les tests savent par le changeset dans les commentaires des billets si la construction qu'ils regardent inclut le correctif.

0

Nous marquons l'enregistrement de contrôle de source avec le numéro de défaut qui a été corrigé ou le numéro d'amélioration qui a été implémenté.

En récupérant le journal d'archivage entre deux générations, vous pouvez déterminer ce qui a été implémenté ou corrigé.

1

Nous utilisons TFS conjointement avec TeamCity for CI de JetBrains. Lorsque vous associez des vérifications à des tâches, notre règle d'archivage personnalisée ajoute les tâches et les bogues associés à leurs ID et titres aux commentaires d'archivage.

Ces commentaires sont ensuite utilisés pour générer les notes de version, qui sont générées automatiquement pour chaque génération.

0

Nous utilisons un service SVN géré appelé Beanstalk (http://www.beanstalkapp.com/) qui vous permet de vous connecter facilement avec un certain nombre de systèmes de gestion de bugs/fonctionnalités. Dans notre cas, nous utilisons FogBugz de Fog Creek à cette fin. SVN/Beanstalk vous permet de prendre des notes lorsque vous archivez une construction qui, à son tour, affectera l'état d'un ou de plusieurs cas FogBugz. Du côté client, nous utilisons Tortoise SVN et Visual SVN pour gérer l'interaction du client local et du serveur SVN Beanstalk (Tortoise fournit le service actuel, Visual SVN assure l'intégration entre Tortoise SVN et MS Visual Studio).

Je recommande fortement les deux services et le client Tortoise/Visual SVN.

0

Nous utilisons Fogbugz qui intègre une intégration de subversion. Fondamentalement, il existe un plugin pour Fogbugz qui vérifie les check-ins SVN en arrière-plan. Donc, si vous fournissez un identifiant Fogbugz-case lors de votre enregistrement, il est automatiquement lié à cette inscription. Autant que je sache, vous n'avez besoin d'aucune application spéciale (comme Beanstalk par exemple).

L'inverse est un peu difficile. Dans notre entreprise, il y a une convention selon laquelle pour chaque build (futur ou passé) il y a une "release" à Fogbugz. Si vous corrigez un bogue ou implémentez une fonctionnalité, affectez le cas à la bonne version.

Ensuite, il est assez facile d'obtenir une liste de toutes les fonctionnalités mises en œuvre de la construction X.

Questions connexes