Question

Je connais Nunit pour les tests unitaires de la couche métier, mais je cherche maintenant à automatiser le test de la couche graphique des formulaires gagnants.

J'ai vu watin et l'enregistreur watin pour automatiser les tests sur les applications Web en accédant aux contrôles et en les automatisant.Cependant, j'ai du mal à trouver un équivalent watin pour les formulaires Windows (écrits en c# ou vb.net), de préférence open source.

Existe-t-il un produit ou tous les produits sont-ils basés sur l'enregistrement des pressions sur la souris et le clavier ?

Mise à jour: J'ai regardé ça article de blog sur blanc et cela semble être le genre de chose que je recherche.Le billet de blog soulève certains problèmes, mais comme le blanc n'est que dans la version 0.6, ceux-ci peuvent être résolus.Soyez intéressé si d'autres ont utilisé du blanc ou d'autres à des fins de comparaison.

Était-ce utile?

La solution

Vérifier http://www.codeplex.com/white et http://nunitforms.sourceforge.net/.Nous avons utilisé le projet White avec succès.

Même réponse à une question précédente

Modifier

Le projet White a déménagé et se situe désormais sur GitHub dans le cadre de TestStack.

Autres conseils

TestComplete d'AutomatedQA est une bonne application de test pour automatiser les tests d'interface graphique.Il prend également en charge bien plus que Windows Forms, vous pouvez donc le réutiliser pour d'autres applications.Ce n'est pas open source et c'est le meilleur que j'ai trouvé.Je n'ai pas vu d'équivalent open source à WatiN.Il propose un essai gratuit, à vous de décider si vous l'aimez ou non.La principale raison pour laquelle je l'ai choisi est qu'elle est vraiment rentable par rapport à d'autres applications de test.

Comme nouvelle alternative, je peux vous donner FlaUI (https://github.com/Roemer/FlaUI).Il s'agit essentiellement d'une réécriture complète de White avec plus de fonctionnalités et une base de code propre.

Pour autant que je sache, Blanc est une couche d'abstraction au-dessus de Microsoft Automatisation de l'interface utilisateur cadre.J'ai écrit une couche similaire que nous utilisons en interne sur nos projets et elle fonctionne très bien.Donc White vaudrait certainement le détour

Microsoft a publié la source sur UI Automation, donc si nécessaire, vous devriez pouvoir déboguer toute la pile si nécessaire.

Ce qui est vraiment intéressant, c'est qu'avec le coût de la licence, vous pouvez évoluer et exécuter autant de machines que vous le souhaitez pour l'exécution.

Nous fonctionnons dans VSTS et lions nos résultats aux exigences, mais vous pouvez utiliser C# Express et nUnit et obtenir des outils et des langages de première classe pour un coût minime ou gratuit.

Voici quelques liens de MSDN Magazine sur le code de test automatique :

  • Utiliser UIAutomation Tueur d'insectes Mars 2007
  • Utiliser PowerShell Essai décembre 2007
  • Tester, un utilitaire pour enregistrer les clics de souris et les frappes au clavier, puis les lire et vérifier le comportement du programme.Excellent pour le code non géré.Utilise des handles Windows et peut donc ne pas fonctionner correctement pour le code managé. Tueur d'insectes Mars 2002.

Vous pouvez consulter le Microsoft Automatisation de l'interface utilisateur cadre.Ceci est inclus dans .NET depuis la version 3.0.C'est en fait ce que le framework White utilise de toute façon.

Vous pouvez envisager d'utiliser Interface utilisateur codée, une fonctionnalité intégrée de Visual Studio et une partie de UI Automation :

Les tests automatisés qui pilotent votre application via son interface utilisateur (interface utilisateur) tests d'interface utilisateur codés (CUIT).Ces tests incluent les tests fonctionnels des commandes d'interface utilisateur.Ils vous permettent de vérifier que toute l'application, y compris son interface utilisateur, fonctionne correctement.Les tests d'interface utilisateur codés sont particulièrement utiles lorsqu'il existe une validation ou une autre logique dans l'interface utilisateur, par exemple dans une page Web.Ils sont également fréquemment utilisés pour automatiser un test manuel existant.

...] Une expérience de développement typique pourrait être celle où, initialement, vous créez simplement votre application (F5) et cliquez sur les contrôles de l'interface utilisateur pour vérifier que les choses fonctionnent correctement.Vous pourriez alors décider de créer un test codé afin que vous n'ayez pas besoin de continuer à tester l'application manuellement.Selon les fonctionnalités particulières testées dans votre application, vous pouvez écrire du code pour un test fonctionnel, soit pour un test d'intégration qui pourrait ou non inclure des tests au niveau de l'interface utilisateur.Si vous souhaitez simplement accéder directement à une logique métier, vous pouvez coder un test unitaire.Cependant, dans certaines circonstances, il peut être avantageux d'inclure le test des différents contrôles de l'interface utilisateur dans votre application.Un test d'interface utilisateur codé peut automatiser le scénario initial (F5), vérifiant que le désabonnement de code n'a pas d'impact sur les fonctionnalités de votre application.

Lire la suite sur: https://docs.microsoft.com/en-us/visualstudio/test/use-ui-automation-to-test-your-code

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top