Meilleur auteur de réponses
"Playback fail to find control" dans un menu contextuel

Question
-
Bonjour à tous.
Dans Visual Studio 2012, je dois tester l'IHM d'un logiciel. J'ai souhaité effectuer un test utilisant plusieurs menus contextuels, seulement au moment ou je clique sur l'item du second menu contextuel, mon test échoue.
J'ai créé une petite application pour reproduire le problème. Vous la trouverez ici : http://www.sendspace.com/file/vlerbj
Voici les étapes à suivre
1. En enregistrant vos actions, clic-droit en haut de la fenêtre et cliquez sur "Thing 1".
2. Une fenêtre s'ouvre, cliquez sur "OK".
3. Répetez ces 2 étapes mais en cliquant-droit au milieu de la fenêtre.
4. Générez le code.
5. Exécutez le test. Normalement il échoue au moment du clic sur l'élément du deuxième menu contextuel.
Voici l'erreur captée :
Result Message: Test method CodedUITestProject2.CodedUITest1.CodedUITestMethod1 threw exception: Microsoft.VisualStudio.TestTools.UITest.Extension.UITestControlNotFoundException: The playback failed to find the control with the given search properties. Additional Details: TechnologyName: 'MSAA' ControlType: 'MenuItem' Name: 'Thing2' ---> System.Runtime.InteropServices.COMException: Error HRESULT E_FAIL has been returned from a call to a COM component.
Si vous avez besoin de plus d'informations, n'hésitez pas.
Merci d'avance pour votre aide.
- Modifié Chik3n mercredi 9 avril 2014 12:36
Réponses
-
Re bonjour,
Je crée un nouveau message pour qu'il soit plus visible car j'ai trouvé la source du problème.
En effet les menus contextuels possèdent une propriété "Text" qui est vide par défaut, or le framework de test doit utiliser cette propriété pour repérer les controlles. Il a donc fallut assigner un nom à cette propriété "Text" et le test fonctionne parfaitement.
- Marqué comme réponse Chik3n jeudi 10 avril 2014 09:08
Toutes les réponses
-
Bonjour,
Avez-vous regardé ce post : http://social.msdn.microsoft.com/Forums/en-US/dbf603f5-c07d-4542-a6d8-0cbdb8e59716/playback-failed-to-find-the-control-with-given-search-propertice
Cordialement
Gilles TOURREAU - MVP C#
Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
- MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
- MCSA : SQL Server 2012
- MCITP : SQL Server 2008 Developper
- MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure- Proposé comme réponse Aurel Bera jeudi 10 avril 2014 06:52
-
Bonjour,
Oui j'ai déjà vu ce post.
J'ai plus ou moins écumé le web afin de trouver une solution mais rien n'y fait...
J'ai fait un test en supprimant toutes les actions en cliquant sur les items des menus contextuels et le problème persiste.
Merci de votre aide.
EDIT :
Autre chose, j'ai remarqué que les menus contextuels ont tous le même ControlId.
De ce fait je pense qu'il n'arrive pas à les différencier et lorsqu'il cherche à accéder à l'item du second menu contextuel, il chercherai en fait dans le premier menu.
Qu'en pensez vous ?
- Modifié Chik3n jeudi 10 avril 2014 07:19
-
Re bonjour,
Je crée un nouveau message pour qu'il soit plus visible car j'ai trouvé la source du problème.
En effet les menus contextuels possèdent une propriété "Text" qui est vide par défaut, or le framework de test doit utiliser cette propriété pour repérer les controlles. Il a donc fallut assigner un nom à cette propriété "Text" et le test fonctionne parfaitement.
- Marqué comme réponse Chik3n jeudi 10 avril 2014 09:08
-
Bonjour
Merci de votre retour!
Bien cordialement,
Aurel BERA, MSFT
MSDN Community Support. LE CONTENU EST FOURNI "TEL QUEL" SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE.
S'il vous plaît n'oubliez pas de "Marquer comme réponse" les réponses qui ont résolu votre problème. C'est une voie commune pour reconnaître ceux qui vous ont aidé, et rend plus facile pour les autres visiteurs de trouver plus tard la résolution.