Partager via


Comment : configurer votre application Silverlight à des fins de test

Vous pouvez utiliser les tests codés de l'interface utilisateur afin de créer des tests automatisés pour des applications Silverlight 4 à l'aide de Visual Studio 2010 Ultimate ou Visual Studio 2010 Premium. Vous pouvez également créer des enregistrements des actions associées à vos tests manuels pour des applications Silverlight 4 à l'aide de Gestionnaire de tests Microsoft.

Important

Seules les applications Silverlight 4 hébergées dans une fenêtre Internet Explorer sont prises en charge. Les applications Silverlight 4 qui sont hébergées à l'aide d'un autre navigateur ou qui ne sont pas hébergées dans un navigateur ne sont pas prises en charge.

Pour configurer votre application Silverlight afin de pouvoir lui créer des tests codés de l'interface utilisateur ou des enregistrements des actions, vous devez effectuer les principales tâches suivantes :

  1. Ajoutez le fichier Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper.dll en tant que référence à chaque projet Silverlight 4 de votre solution, de sorte que les contrôles Silverlight puissent être identifiés.

  2. Vérifiez que chaque contrôle Silverlight est doté d'une propriété d'identification unique.

    Notes

    Pour définir cette propriété pour différents contrôles, consultez Définir une propriété Automation unique pour les contrôles Silverlight à des fins de test.

  3. Générez l'application et déployez-la.

Avertissement

Le fichier SilverlightUIAutomationHelper.dll ne peut pas être redistribué dans le cadre de votre application. Lorsque vous ajoutez cette DLL à votre projet Silverlight, vous devez le faire de telle façon que vous puissiez effectuer une compilation conditionnelle de l'application avec ou sans cette DLL, comme l'indique la procédure suivante. Vous pouvez créer une build avec la DLL qui sera utilisée à des fins de test uniquement. De cette façon, la DLL ne sera pas redistribuée.

Contrôles pris en charge

Les contrôles suivants sont pris en charge pour les enregistrements des actions et les tests codés de l'interface utilisateur :

  • Les contrôles standard fournis avec Microsoft Silverlight 4 Tools pour Visual Studio 2010 sont pris en charge.

  • Les contrôles personnalisés qui sont dérivés des contrôles standard de Microsoft Silverlight 4 Tools sont pris en charge.

  • Les contrôles personnalisés qui héritent de System.Windows.Controls.Control. Selon la façon dont vous personnalisez ces contrôles, une prise en charge limitée peut être fournie pour certaines actions. En outre, il se peut qu'il soit impossible d'obtenir les valeurs de certaines propriétés à des fins de validation.

Contrôles non pris en charge

Les contrôles suivants ne sont pas pris en charge pour les enregistrements des actions et les tests codés de l'interface utilisateur :

  • Les contrôles personnalisés qui ne sont pas dérivés des contrôles fournis avec Microsoft Silverlight 4 Tools pour Visual Studio 2010.

  • Des contrôles tiers peuvent ne pas être pris en charge, selon la façon dont ils ont été créés.

Avertissement

Vous pouvez créer un plug-in personnalisé pour prendre en charge le test d'un contrôle personnalisé. Pour obtenir un exemple qui illustre la façon de créer un plug-in personnalisé, consultez Extension des tests codés de l'interface utilisateur t enregistrements des actions pour prendre charge Microsoft Excel.

Utilisez les procédures suivantes pour ajouter ou supprimer le fichier SilverlightUIAutomationHelper.dll :

  • Ajouter le fichier SilverlightUIAutomationHelper.dll à un projet Silverlight 4

  • Supprimer le fichier SilverlightUIAutomationHelper.dll d'un projet Silverlight 4

Pour définir une propriété d'identification unique pour chaque contrôle Silverlight, consultez la rubrique suivante : Définir une propriété Automation unique pour les contrôles Silverlight à des fins de test.

Pour ajouter le fichier SilverlightUIAutomationHelper.dll à un projet Silverlight 4

  1. Pour ouvrir la solution qui contient l'un de vos projets Silverlight, cliquez sur Fichier et pointez sur Ouvrir. Cliquez sur Projet/Solution.

    La boîte de dialogue Open Project s'affiche.

  2. Sélectionnez votre solution, puis cliquez sur Ouvrir.

  3. Pour chaque projet Silverlight de votre solution que vous souhaitez tester, vous devez ajouter le fichier SilverlightUIAutomationHelper.dll. Pour ce faire, cliquez avec le bouton droit sur le projet, puis cliquez sur Décharger le projet.

  4. Cliquez avec le bouton droit sur le projet que vous avez déchargé, puis cliquez sur Modifier <nom de projet>.

    Vous constaterez que des nœuds PropertyGroup sont suivis de nœuds ItemGroup.

  5. Pour définir la condition de production à utiliser afin d'ajouter de façon conditionnelle le fichier SilverlightUIAutomationHelper.dll, vous devez effectuer les deux modifications suivantes :

    1. Pour définir la condition de production, ajoutez l'entrée suivante au premier nœud <PropertyGroup> :

      <Production Condition="'$(Production)'==''">False</Production>
      
    2. Pour ajouter la DLL lorsque la build n'est pas une build de production, insérez le nœud Choose suivant après les nœuds PropertyGroup, mais avant les nœuds ItemGroup :

      <Choose>
         <When Condition=" '$(Production)'=='False' ">
               <ItemGroup>
                 <Reference Include="Microsoft.VisualStudio.TestTools.UITest.Extension.SilverlightUIAutomationHelper">
                 </Reference>
               </ItemGroup>
             </When>
        </Choose>
      
  6. Pour enregistrer le fichier, cliquez sur Enregistrer.

  7. Pour recharger ces modifications, cliquez avec le bouton droit sur le projet, puis cliquez sur Recharger le projet

    Avertissement

    Si vous souhaitez tester plusieurs projets Silverlight, vous devez exécuter ces étapes pour chacun d'eux.

Pour supprimer le fichier SilverlightUIAutomationHelper.dll d'un projet Silverlight 4

  • Pour supprimer le fichier SilverlightUIAutomationHelper.dll de sorte que cette DLL ne soit pas redistribuée avec votre code de production, affectez la valeur true à la condition de production dans le premier nœud <PropertyGroup> :

    <Production Condition="'$(Production)'==''">True</Production>
    

    Ainsi, la DLL n'est plus ajoutée comme une référence par le nœud Choose que vous avez inséré dans le projet lors de la procédure précédente.

    Notes

    Vous pouvez également affecter la valeur True à une variable d'environnement nommée Production. Vous pouvez ensuite utiliser msbuild pour générer le projet Silverlight et supprimer le fichier SilverlightUIAutomationHelper.dll.

Voir aussi

Concepts

Test de l'interface utilisateur avec des tests d'interface utilisateur automatisés

Autres ressources

Test des applications Silverlight avec des tests codés de l'interface utilisateur ou des enregistrements d'actions

Définir une propriété Automation unique pour les contrôles Silverlight à des fins de test