2009-11-16 5 views
4

J'ai une application de bureau écrit en C# créé à l'aide et l'unité VS2008 Pro testé avec cadre Nunit et plug-in Testdriven.net pour VS2008. Je dois effectuer des tests du système sur l'application.système Test d'une application de bureau

Je l'ai déjà fait des tests du système basé sur le Web à l'aide de Bad Boy et plug-in Selenium pour Firefox, mais je suis nouveau à Visual Studio et C#.

J'apprécierais que quelqu'un puisse partager leurs conseils à ce sujet.

+1

Les tests du système comportent de nombreux types de tests: tests d'utilisabilité, tests de performance, tests de régression. Existe-t-il un type particulier de test que vous souhaitez effectuer ou souhaitez-vous seulement valider le système par rapport à vos exigences fonctionnelles? –

Répondre

0

tests système ont généralement des cas d'utilisation, à la fin pour mettre fin à des scénarios et d'autres fonctions scriptées que les gens réels Execute. Ce sont les tests qui ne se prêtent pas bien à l'automatisation car ils demandent à vos pignons testés à l'unité de fonctionner les uns avec les autres. Vous pourriez avoir d'excellents tests unitaires pour vos «écrous» et vos «clés», mais seul un test complet du système vous permettra de savoir si vous avez la bonne clé pour l'écrou à portée de main, comment sélectionner/le retourner du tiroir

En bref - tests manuels.

+0

1down. Désolé mais gros, pas d'accord. Les tests fonctionnels du système sur l'application de bureau peuvent être facilement automatisés, spécialement sur les fenêtres, avec d'autres plateformes, il pourrait y avoir un problème (comme QNX). Mais pour les fenêtres, il y a des outils qui font cela. Et il y a beaucoup d'outils pour différents tests de système sur le bureau (comme Thomas Owens a commenté la question). – yoosiba

2

Les tests du système devront probablement être effectués via l'interface utilisateur. Cela vous donne deux options:

1) Vous pouvez gérer manuellement les cas de test en cliquant sur les éléments. 2) Vous pouvez automatiser les cas de test en programmant par rapport à l'interface utilisateur. Il existe de nombreux outils commerciaux pour le faire ou vous pouvez utiliser un cadre de programmation comme le Microsoft UI Automation Framework. Ils ont tendance à utiliser les API d'accessibilité intégrées à Windows pour accéder à votre interface utilisateur.

Si vous allez la route manuelle ou automatique dépend de combien de fois vous allez exécuter les tests. Si vous ne faites que les exécuter une ou deux fois, ne passez pas votre temps à automatiser. Vous ne le récupérerez jamais. Si vous allez les exécuter souvent, l'automatisation peut être très pratique.

Un mot d'avertissement: Automatiser l'interface utilisateur est pas difficile, mais il est très fragile. Si l'application change beaucoup, les tests nécessiteront beaucoup de maintenance.

0

Si vous êtes prêt à mettre de l'argent vers le bas, vous pouvez regarder quelque chose comme TestComplete.

Bien que je ne l'ai pas vraiment utilisé encore (notre société vient d'acheter), il semble assez agréable. Vous pouvez enregistrer des clics et des pressions de touches, définir des critères de réussite et relire le test ultérieurement. Il semble être assez intelligent à propos des changements d'interface utilisateur - il se souvient du bouton sur lequel vous avez cliqué, et pas seulement le (x, y) de chaque clic.

Il est scriptable, ou glisser-déposer programmable.

Je ne suis affilié d'aucune façon, et ce n'est pas une approbation, parce que je ne me suis pas encore vraiment fait une opinion à ce sujet.

1

Comme Thomas Owens a commenté votre question, vous devez d'abord décider quel type de test du système que vous voulez faire. Mais en supposant que vous voulez commencer avec les tests du système fonctionnel. Préparez les cas d'utilisation que vous voulez automatiser. Que vous devez trouver l'outil approprié. Pour commencer:
AtoIT - n'est pas un outil d'atomisation de test mais permet d'automatiser certaines tâches. Vous pouvez donc enregistrer/scripter des cas d'utilisation. Pas vraiment recommandé, mais peut être fait.
HP QuickTestPro - peut facilement être fait avec cet outil via l'enregistrement/script, mais il est cher, donc peut-être pas la peine pour un usage personnel.
IBM Robot - comme HP QTP.Powershell - vous pouvez écrire des scripts dans PowerShell et les exécuter. Si vous utilisiez des outils de type IDE dédiés pour PowerShell, vous pourriez également enregistrer des tests. J'ai fait du web automation via powershell et ça a marché. Avec un peu de travail, vous pourriez probablement créer un script autour de votre application de bureau.

Et le meilleur serait de essayer différents outils, et d'utiliser celui qui vous convient le mieux. Essayez this link et this link.

Questions connexes