3
votes

La requête HTTP JMeter a échoué

Je suis vraiment nouveau sur JMeter. J'essaye de faire un test simple comme je l'ai vu dans certaines vidéos. Lorsque j'essaie d'exécuter un test simple, cela me donne une erreur dans l'arborescence des résultats. Il dit: Code de réponse: Code de réponse non HTTP. J'ai vu beaucoup de choses sur stackoverflow, mais rien avec l'erreur que j'ai. Vraiment désolé s'il s'agit d'une question en double, mais je n'ai trouvé aucune solution pour mon cas.

Voici ce que j'essaye de faire: entrez la description de l'image ici

 entrez la description de l'image ici


1 commentaires

Vous n'avez pas de gestionnaire d'en-tête sous votre demande? Essayez d'enregistrer l'url google de votre navigateur avec l'enregistreur de script de test HTTP (S)


5 Réponses :


2
votes

Votre configuration fonctionne pour moi. Veuillez essayer l'adresse du serveur www .google.com. Lorsque vous appelez google.com, deux demandes sont effectuées:

  1. La première requête "GET http://google.com/ " renvoie HTTP 301 déplacé définitivement. Première demande lors d'un appel sur google.com
  2. La requête suivante "GET http://www.google.com/ " renvoie un HTTP 200 Deuxième demande lors d'un appel sur google.com

Lorsque vous appelez www.google.com, le 301 ne vous sera pas retourné: Une requête avec www entraîne une seule requête

Assurez-vous que votre connexion réseau est correcte.


2 commentaires

C'est peut-être parce que je suis arrivé au travail où nous avons un accès limité aux sites Web? Mais j'ai accès à google.com


Ensuite, il peut s'agir d'un problème de proxy. Veuillez utiliser l'enregistreur de script jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.html



2
votes

Si vous regardez le message de réponse, vous remarquerez peut-être la cause de l'erreur: "Connexion expirée: connexion".

Votre temps de connexion est proche de 21 secondes, puis vous recevez un timeout. Il s'agit d'un délai d'expiration de connexion TCP par défaut (voir le délai d'expiration du socket de 21000 ms provient-il? ).

Je suggère de vérifier la connexion réseau à l'hôte sur lequel vous exécutez JMeter.


0 commentaires

2
votes

Je viens de parcourir l'onglet des résultats de l'échantillonneur des images. Je suppose que ce n'est pas un problème avec votre configuration Jmeter. Si vous regardez les résultats de l'échantillonneur, cela ressemble à ceci.

Load time: 21074
Connect Time: 21074
Latency: 0
Size in bytes: 2723
Sent bytes:0
Headers size in bytes: 0
Body size in bytes: 2723
Sample Count: 1
Error Count: 1
Data type ("text"|"bin"|""): text
Response code: Non HTTP response code: 
Response message: Non HTTP response message:  google.com:80 ... connection timeout


HTTPSampleResult fields:
ContentType: 
DataEncoding: null

Si vous regardez le temps de chargement et le temps de connexion , ils sont plus de 27 secondes et les deux ont la même valeur. Ensuite, la valeur Octets envoyés et la Taille des en-têtes en octets est 0 . Le message de réponse indique qu'il s'agit d'un délai de connexion

En regardant ces résultats, il semble que Jmeter a essayé d'établir la connexion pendant 27 secondes, puis a expiré avec envoyer toute demande. C'est pourquoi la valeur des octets envoyés est 0.

Étant donné que la réponse dit de se connecter à google.com:80 , je soupçonne que cela est dû à un problème de proxy ou probablement à une connexion lente problème.

Comme solution, vérifiez d'abord si votre connexion proxy est sur le port 80. si c'est le cas, essayez de supprimer le proxy et relancez le test. Sinon, vérifiez la vitesse de connexion au réseau. votre script n'a aucun problème.

Bonne chance


0 commentaires

6
votes

Veuillez ne pas diriger les outils de test de performance vers des sites que vous ne possédez pas, ne gérez ou ne contrôlez pas OU que vous ne possédez pas l'autorisation de ceux qui ont ces rôles. Votre contrat d'utilisateur final GOOGLE interdit notamment l'utilisation d'outils automatisés sur son interface, avec les seules interfaces prises en charge pour l'automatisation des API de services Web publiées.

Les outils de test de performance sont l'équivalent des logiciels nucléaires tactiques. Ils sont conçus pour exercer une pression maximale sur la cible, jusqu'à détruire sa capacité à continuer l'opération. Diriger un outil de ce type vers un site que vous ne possédez pas ou que vous n'avez pas la permission de cibler n'est pas différent de lancer des bombes sur des maisons aléatoires à l'arrière d'une camionnette traversant un quartier. Je n'ai pas utilisé la licence Jmeter récemment, mais tous les outils commerciaux de test de performances interdisent cette activité sous licence.

Téléchargez une application GNU, installez-la vous-même, puis testez-la. Puis-je recommander SugarCRM


2 commentaires

C'est peut-être parce que je suis arrivé au travail où nous avons un accès limité aux sites Web? Mais j'ai accès à google.com


Il y a ici un problème d'éthique. Lorsque vous acceptez d'utiliser un site, y compris les restrictions, vous devez les respecter. Cela est également vrai pour les outils que vous utilisez - il existe de nombreuses restrictions de licence que je n'aime pas, mais je les respecte strictement. Pourquoi quelqu'un accepterait-il les résultats d'un testeur avec la volonté de violer les licences et les accords? Dans ma propre organisation, un tel testeur ne serait plus autorisé à travailler dans ce rôle. Vous mettez le travail de quelqu'un d'autre sous charge sans sa permission. Mauvaise magie.



3
votes

Vous ne devez pas soyez des sites Web de test de charge que vous ne possédez pas sans l'autorisation explicite de ces propriétaires de sites Web

Je m'attends donc à ce que:

  1. Vous devez arrêter d'envoyer des demandes à google.com. Pensez à utiliser votre propre application Web ou des sites conçus pour cette forme de pratique comme http://blazedemo.com/ ou http://www.newtours.demoaut.com/ . Si le tutoriel auquel vous faites référence suppose des sites Web réels, je ne ferais pas beaucoup confiance à ce tutoriel.
  2. Vous êtes bloqué soit du côté de Google, soit du côté de votre FAI ou de votre routeur / pare-feu qui peut avoir une logique automatisée de détection et de prévention des comportements frauduleux

0 commentaires