dimanche 22 juin 2014

Vidéos Visual Studio Online et nouveautés sur les tests fonctionnels

J'ai enregistré pour Microsoft France des vidéos afin de présenter les derniers nouveautés sur Visual Studio 2013 et surtout Visual Studio Online.

La première vidéo permet de découvrir les avantages de Visual Studio Online.Le premier avantage est de disposer en quelques minutes d'une plateforme complète de développement logiciel, mise à jour régulièrement et avec un niveau de service très élevé. Le seul point d'attention est sur la personnalisation : actuellement vous ne pouvez pas ajouter un nouveau champ à un élément de travail ou changer le modèle de processus. Il apporte aussi des services exclusifs que l'on peut utiliser même si nous utilisons une version "On Premises" de TFS. Ces services sont les tests de charges avec minimum 15 0000 d'utilisateurs virtuels minutes par mois, sans avoir à mettre en place une infrastructure coûteuse et demandant plusieurs compétences. Il apporte aussi Application Insights, en preview actuellement, qui permet de surveiller son application au niveau de la disponibilité, de la performance, de l'usage et des journaux de diagnostiques. Et même bientôt la possibilité de modifier son code source directement dans le navigateur pour des corrections minimes avec le projet "Monaco".

La deuxième vidéo se penche sur les évolutions des tests fonctionnels avec Visual Studio ALM 2013.Au cours des différentes mises à jour de TFS 2012 puis TFS 2013, un ensemble important des fonctionnalités de Microsoft Test Manager ont été portées sur directement dans le Web Access, l'interface Web de Team Foundation Server. Tout d'abord, la possibilité de créer des cas de test à partir d'un simple tableau. Il est même possible de le copier-coller depuis son plan de test Excel. Le testeur peut aussi exécuter ses scénarios de test directement dans Internet Explorer. Cela lui permet aussi de consulter l'avancement de son plan de test depuis tous ses terminaux, sa tablette par exemple. Cela permet de remplacer avantageusement le traditionnel cahier de test dans plusieurs de nos projets clients. Si nécessaire, il est possible d'exporter l'ensemble du plan en HTML pour l'imprimer ou l'envoyer par mail.

L'ensemble des vidéos sur les nouveautés de Visual Studio 2013 sont disponibles sur le site de Visual Studio France 

have a nice day.

samedi 3 mai 2014

Retour sur le ScrumDay 2014

En avril, j'ai participé au Scrumday 2014 organisé dans le centre de conférence de DisneyLand Paris. Le ScrumDay est, avec Agile France, un des rendez-vous phare de la communauté Agile.
La conférence du 10 avril proposait de nombreuses présentations et ateliers autour du thème de cette année la Culture Produit, autrement dit le Product Owner et ses pratiques ont été au centre de beaucoup de sessions. La KeyNote a bien lancée la journée avec un orateur plein d’énergie et prestigieux :Alistair Cockburn co-auteur du manifeste Agile. J’ai trouvé le contenu de bon niveau et les ateliers particulièrement intéressants. Pour résumer la journée en un slogan « Arrêter de faire des projets, créez des produits innovants … et disruptifs ».

En parallèle, de la conférence une « coach clinic » était à la disposition des participants pour échanger autour de ses projets produits avec un coach agile. Le centre de conférence et le service pendant les pauses étaient vraiment excellents. J’ai très bien petit déjeuner, déjeuner et goûter. Tant mieux ! Le soir venu, un dîner a réuni plus de 100 agilistes pour échanger dans une très bonne ambiance autour des pratiques, et aussi passer de bons moments de rire et détente.

cercle pour clôturer le forum ouvert
Le lendemain 11 avril, quelques-uns ont décidé de profiter du voyage pour visiter les parcs Disney en famille….d’autres ont essayé une nouveauté cette année : le forum ouvert (Open Space). Avant de démarrer, tous les participants peuvent proposer un sujet de leur choix, chaque thème est ajouté à une place de marché et associé à un lieu et un horaire. Chacun est ensuite libre de participer aux groupes de travail rassemblés dans une grande salle. Le concept impose peu de formalisme mais une simple loi « suivez vos 2 pieds ». J’ai pu expérimenter des jeux agiles, aider à trouver de vraies pistes pour débloquer une situation tendue, participer un atelier Lean Canvas pour construire le bon produit, et découvrir que j’étais du profil C1 pour Action Types !

Avec la possibilité d’utiliser votre DIF, j’espère vous croiser nombreux pour une édition 2015 du ScrumDay encore meilleure ou plus rapidement au prochaines soirées Meetup. En attendant, vous pouvez visualiser les vidéos des présentations sur la FrenchSUG TV et le reportage sur l’évènement avec une équipe d’organisation … disons #happy.

Edit : la page Scrumday 2014 regroupe les enregistrements des sessions

1er jour de conférence
have a nice day.

dimanche 16 mars 2014

Démarrer avec Specflow

L'article suivant vous propose de vous lancer avec Specflow en langage gherkin pour les francophones. Specflow est la version destinée à Visual Studio de Cucumber.

Installation dans Visual Studio

Dans Visual Studio 2010, 2012 ou 2013, depuis les extensions et mises à jour de Visual Studio Gallery, chercher « specflow » et l’installer.
Redémarrer ensuite Visual Studio 2013

Créer un projet de test

Il faut créer un projet de test pour intégrer les différents cas de test.
(Plusieurs framework de test unitaire sont supportés dont MsText, NUnit, xUnit, mbUnit)
Cliquer sur Ajouter au niveau de la solution et ajouter un projet de test unitaires :
Supprimer le fichier TestUNit1.cs créé automatiquement dans le projet.
Pour fonctionner avec MSTest, il faut installer le package NuGet SpecFlow dans le projet (Pour Nunit, remplacer par SpecFlow.NUnit). Il suffit de lancer la commande suivante dans le Nuget Package Manager  :
PM> Install-Package SpecFlow -ProjectName MonAppli.Extranet.Specs

ou l'installer via l'interface de Package Manager
La référence TechTalk.SpecFlow doit apparaître dans le projet de test :

Dans le fichier App.config, il faut modifier la configuration afin :
  • d'ajouter le langage par défaut en fr-FR pour écrire les Feature en francais (en-US par défaut)
    <language feature="fr-FR" />
  • d'indiquer le framework MsTest comme celui à utiliser pour générer les tests
    <unitTestProvider name="MsTest" />
Pour le détail des configurations possibles se reporter à la page de documentation suivante http://go.specflow.org/doc-config.

Créer une première feature

Cliquer droit sur le projet pour ajouter un nouvel élément. Choisir le SpecFlow Feature File et cliquer sur Add.
Ouvrir le fichier et modifier les mots clés par ceux correspondant au français.
"fr": {
 "name": "French",
 "native": "français",
 "feature": "Fonctionnalité",
 "background": "Contexte",
 "scenario": "Scénario",
 "scenario_outline": "Plan du scénario|Plan du Scénario",
 "examples": "Exemples",
 "given": "*|Soit|Etant donné|Etant donnée|Etant donnés|Etant données|Étant donné|Étant donnée|Étant donnés|Étant données",
 "when": "*|Quand|Lorsque|Lorsqu'<",
 "then": "*|Alors",
 "and": "*|Et",
 "but": "*|Mais"
},
Une aide contextuelle (Intellisense) permet de retrouver facilement les mots-clés :

Générer les étapes et exécuter les tests

Pour construire les tests unitaires sous-jacents, il suffit de générer les étapes en cliquant droit sur le fichier et choisissant Generate Step Definitions , puis en sélectionnant les étapes à générer et cliquer sur Generate.
Vous  pouvez alors choisir le fichier et la classe (existante ou à générer) qui accueillera ces étapes.

Une fois le squelette du code généré, lancer une compilation du projet en cliquant sur Projet > Générer. Chaque scénario peut être lancé depuis la fenêtre de Test de Visual Studio.
Il reste alors à implémenter le code de test puis le code réalisant la fonctionnalité.
N’oubliez pas de supprimer la ligne avec ScenarioContext.Current.Pending();

Pour aller plus loin

Pour bien coder et tirer parti des fonctionnalités de specflow, la page suivante permet de pointer sur les pratiques les plus importantes : http://www.specflow.org/getting-started/beyond-the-basics/
La page des ressources est aussi intéressante notamment les blogs Posts concernant ASP .Net MVC.
http://www.specflow.org/resources/

L'intégration à la build TFS est aisée. Comme des tests unitaires sont générés (MsTest, NUnit, …)., il n’est pas nécessaire d’ajouter de la configuration supplémentaire au niveau de la Build (si ce n’est l’exécution des tests unitaires, normalement configuré par défaut).

Pour des fonctionnalités plus avancées, il faut utiliser SpecFlow+ Runner qui est payant.
Il permet aussi de :

  • Afficher les titres des scenarios dans le résultat de l’exécution
  • Générer un rapport HTML détaillé et personnalisable
  • Permettre de filtrer les scenarios dans la définition de Build
have a nice day.