2010-02-18 13 views
1

Notre équipe Scrum de trois développeurs dispose d'un testeur dédié. Au moment où le testeur attend ostensiblement quelque chose à tester pour la plupart de la première semaine de notre sprint de 2 semaines. Nous faisons généralement notre première version du sprint livrable autour du jeudi ou vendredi de la semaine de sprint 1. À ce stade, notre testeur peut "tester" le logiciel embryonnaire.À quel moment d'un sprint doit-on impliquer une ressource de test fonctionnel?

Cela soulève la question dans mon esprit - quelle est la valeur des tests fonctionnels comme cet ajout, si tôt dans le développement du livrable? A ce stade (fin de la première semaine de sprint) en développement, il y a généralement des bugs/omissions fonctionnels significatifs qui seraient rectifiés si le test n'était reporté que de quelques jours (disons à la semaine 2 du sprint).

Quelle est la meilleure pratique dans ce cas?

+0

Question connexe: http://stackoverflow.com/questions/725023/scrum-appropriate-non-development-resource-level –

+0

Il y a de bonnes pratiques dans le contexte, mais il n'y a pas de bonnes pratiques. En outre, cela devrait être sur Software Engineering SE plutôt que sur Stack Overflow. – EJoshuaS

Répondre

3

Pendant que vous mentionnez Scrum, une bonne pratique de gestion, vous ne décrivez pas la pratique de test que vous utilisez.

Si vous utilisez les meilleures pratiques, vous devriez utiliser le développement piloté par les tests.

Le développement piloté par les tests signifie que les tests doivent être effectués dès le début. Les programmeurs doivent écrire des tests et remplir des classes qui réussissent ces tests.

Le testeur doit être l'écriture de tests fonctionnels le jour 1 l'application qui ne passe absolument le jour 1. Finalement, l'application commence à passer ces tests et vous pouvez appeler votre sprint fait.

Si vous ne faites pas de développement piloté par les tests, vous devriez l'être, et votre testeur devrait écrire des scénarios de test d'intégration.

Si votre testeur ne peut pas coder, apprenez-lui à coder. Vous devez avoir un testeur qui peut coder. Et faites-les commencer à coder les tests fonctionnels au jour 1.

+0

Je suis d'accord avec votre réponse. J'ai supprimé la ligne concernant l'interruption du testeur car l'essentiel de ma question concerne la valeur des tests fonctionnels au début d'un sprint. – Ben

3

Un testeur peut passer par les étapes de spécification et d'écriture des scripts de test/critères d'acceptation. Comme un dev arrive à la fin d'une tâche, mais avant l'enregistrement, ils peuvent également faire des mini-tests, c'est-à-dire un œil de 5 minutes avec le développeur qui termine le travail peut souvent faire quelques bugs.

Il y a toujours des tests de l'application existante (en supposant que ce n'est pas le tout premier sprint d'un nouveau produit) il y a toujours des bugs à trouver.

Ensuite, il y a triage des bogues existants, sont-ils haute ou basse priorité.

Ensuite, il y a le test et la fermeture des bogues que les développeurs ont corrigés.

Bien sûr, le plus important est de faire du café et d'essuyer le front enfiévré de tout développeur qui lève la main.

1

Vous avez découvert un problème avec votre Backlog de produit. Si vous avez 3 devs codant pour 3 jours sans code testable/libérable, alors vos histoires sont trop grandes. Vous devriez remarquer ceci refléter ce fait sur votre burndown; flatline-> grosse baisse à la fin du sprint. L'intégration devrait être une routine quotidienne avec de nouvelles fonctionnalités toujours disponibles pour les tests.

1

Je suis d'accord avec ce qui précède.Lorsque vous choisissez vos histoires d'utilisateurs pour le printemps, vous devriez commencer à définir la façon dont ils seront testés

0

Que diriez-vous:

  • Automatiser certains des tests de l'histoire du dernier sprint qui ont été testés à la main

  • Automatisez la configuration des données de test (et/ou des machines), afin de pouvoir effectuer plus rapidement la prochaine série de tests de régression. Écrivez les spécifications de test pour certaines des histoires, afin que les développeurs aient une meilleure information quand ils arrivent à faire ces histoires.