Duplicata possible:
Comment testez-vous le stress d'une application Web?
Actuellement, j'ai configuré un projet avec cc.net, watin et nunit et maintenant je veux faire des tests de stress, de charge et de performance de mes projets .net. Toute idée de l'outil open source que je devrais utiliser ou le réaliser avec les mêmes outils de travail et si oui, comment?
Le service fourni par mon entreprise n'est pas open source, mais il est plutôt cool et s'appuie sur l'open source. C'est un service de test de charge qui utilise de vrais navigateurs pour lire la charge (par opposition aux utilisateurs HTTP/virtuels simulés). Nous utilisons Selenium comme moteur de lecture, ce qui devrait être quelque peu familier aux utilisateurs de WatiN.
La meilleure partie de notre service (ou l'idée générale d'utiliser un vrai navigateur) est que les choses .NET comme ViewState sont gérées automatiquement. Vous n'avez pas à faire de ruse comme analyser la demande avec des expressions régulières pour la faire fonctionner. Au lieu de cela, le navigateur fait exactement ce que fait un navigateur normal.
Je m'excuse si ce post semble trop commercial, mais comme la question concerne l'open source (nous exploitons l'open source et avons un essai gratuit) et .NET (l'une de nos excellentes fonctionnalités est la prise en charge transparente de .NET), j'ai pensé que je le donnerais une mention.
Bonne chance!
J'ai utilisé Apache JMeter avec un succès assez décent dans le passé. L'interface est assez facile à utiliser et prend en charge les agents distants pour aider au test de charge avec de nombreux hôtes.
Jmeter, haut la main. C'est le seul outil que j'ai jamais utilisé qui a produit des résultats fiables à maintes reprises. Une fois que vous avez compris, c'est une joie absolue de travailler avec et vous pouvez simuler une grande charge avec un nombre relativement petit de threads.
Je voterais pour JMeter. Totalement gratuit et assez facile à installer et à démarrer. Voici quelques liens sur la façon de le faire Test de résistance de votre application avec Jmeter
Nous avons également décrit le processus de test, les différents paramètres et métriques.
Les derniers jours, je suis tombé sur HttpRider et semble décent pour le but. Interface utilisateur propre et facile à configurer, bien que je recommande la prudence, car ils indiquent que c'est la version bêta (au moment de la publication).
Si c'est pour un site web/webapp, vous pouvez aller ici pour quelques réponses: Meilleure façon de tester un site web
J'ai utilisé Jmeter pour tester la charge de mon application avec Selenium. J'ai amélioré le code Jmeter pour appeler le moteur Selenium pour simuler le test de charge.
Puisque vous connaissez déjà c #. vous pouvez essayer cet outil fwptt.sourceforge.net. Il génère essentiellement une classe de test en C # que vous pouvez modifier à votre guise et ensuite exécuter votre test avec cette classe.
Comme vous êtes un développeur C #, vous pouvez facilement comprendre la structure de la classe. Je vous recommande donc d'utiliser csunit pour ses tests et cet outil est open source et vous pouvez le trouver facilement ..
Pour les tests de service Web, restes de savon ou WCF (y compris WebHttpBinding), essayez SOA Cleaner. Peut être téléchargé à partir de: http://xyrow.com . Il y a une version gratuite, qui ne nécessite aucune installation. Il peut également effectuer des tests de charge.
Lors du développement pour la plate-forme MS Windows, j'utilise typeperf. Utilise les compteurs WMI intégrés de MS Windows (presque tous les types d'informations que vous souhaitez suivre sont là) donc vous n'avez pas besoin d'installer une "application serveur" sur les machines cibles.
Il est extrêmement utile lors du test d'applications client/serveur ou de plusieurs machines en même temps. Il peut générer des fichiers CSV, que j'utilise ensuite pour générer des rapports et des graphiques. De plus, WMI fournit des compteurs spéciaux pour les applications NET.
Si le client de ligne de commande typeperf ne suffit pas, vous pouvez coder le vôtre en utilisant les API fournies par MS.
Ayant le même problème et j'utilise NTime - pour les premiers jours mais ça a l'air plutôt bien. Peut exécuter plusieurs threads pour les tests et d'autres bonnes fonctionnalités feront rapport ici si quelqu'un est intéressé.
Je note que la plupart des réponses ici concernent le monde Java/Web, ni l'une ni l'autre ne correspond à mes exigences.
Nous utilisons Grinder pour exécuter des tests de charge/stress et fonctionnels contre des services Web. Nous ne l'avons jamais utilisé pour les pages Web, mais c'est censé le faire également. Vous pouvez vraiment battre vos serveurs en installant les "agents" Grinder sur quelques machines qui engendrent ensuite un tas de processus pour frapper votre site pour simuler plusieurs connexions.
La documentation est juste OK, mais qu'attendez-vous pour un projet open source?
Open STA est l'outil de facto open source pour les tests de charge.
Mais il ne peut prendre en charge que le protocole Http.
Cordialement Kimberly Free LoadRunner Tutoriels vidéo
WebLOAD est un testeur de charge open source. Je crois qu'il a été initialement développé par le même gars qui a développé Mercury LoadRunner.
Ils ont également une version commerciale: Comparaison des éditions WebLOAD
Si vous utilisez une plate-forme Windows et que vous disposez de Visual Studio Enterprise Edition, vous pouvez également utiliser l'outil de test d'Application Center.
Et enfin et surtout, il y a Homer: Microsoft Web Application Stress tool (aka WAS, prédécesseur d'Application Center Test)
J'ai utilisé openSTA .
Cela utilise un langage de script relativement simple.
Vous pouvez facilement tester les services Web et écrire vos propres scripts.
Il vous permet de rassembler les scripts dans un test comme vous le souhaitez et de configurer le nombre d'itérations, le nombre d'utilisateurs à chaque itération, le temps de montée en puissance pour introduire chaque nouvel utilisateur et le délai entre chaque itération. Des tests peuvent également être programmés à l'avenir.
C'est open source et gratuit.
Il produit un certain nombre de rapports qui peuvent être enregistrés dans une feuille de calcul. Nous utilisons ensuite un tableau croisé dynamique pour analyser et représenter facilement les résultats.