2017-09-06 1 views
0

J'ai configuré l'échantillonneur TCP pour transmettre des données XML et vérifier le retour. J'ai l'adresse IP correcte, le numéro de port est correct et les données sont prêtes.Erreur Jmeter 500 dans TCP

Cependant, je reçois toujours cette erreur:

Thread Name: BasicCheck 1-1 
Sample Start: 2017-09-06 00:12:59 UTC 
Load time: 3520 
Connect Time: 1 
Latency: 0 
Size in bytes: 0 
Sent bytes:0 
Headers size in bytes: 0 
Body size in bytes: 0 
Sample Count: 1 
Error Count: 1 
Data type ("text"|"bin"|""): text 
Response code: 500 
Response message: org.apache.jmeter.protocol.tcp.sampler.ReadException: Error reading from server, bytes read: 0 

têtes de réponse:

SampleResult fields: 
ContentType: 
DataEncoding: windows-1252 

Je sais que le serveur est en fonctionnement, je mets le nom d'utilisateur et mot de passe dans les emplacements TCP Sampler Jmeter. Je ne sais tout simplement pas pourquoi je reçois cette erreur.

Ceci est sur une machine Windows (évidemment) à un serveur TCP droit.

+0

Avez-vous essayé de vérifier Fermer case à cocher connexion? – user7294900

+0

La connexion doit rester ouverte afin d'envoyer plus de messages après le premier. – Bill

Répondre

0

Vous devez faire les choses suivantes pour faire ce travail:

  1. Dans l'échantillonneur TCP faire EOL Octet Valeur = 10 Délai d'attente (millisecondes) pour la réponse entrer la valeur 5000 ou 10000
  2. Ajouter définis par l'utilisateur les variables que vous voulez envoyer en tant que texte via l'échantillonneur TCP. Ex. Je veux envoyer le texte comme $ {STX} 2017105557 | SAMPLEMESSAGE | Message2 $ {ETX} pour que STX et ETX soient mes variables définies par l'utilisateur.
  3. Ajoutez un préprocesseur de bean shell pour convertir les valeurs au format ASCII.

Exemple de code:

[String STX = URLDecoder.decode(vars.get("STX"), "ASCII"); 
vars.put("STX",STX); 
String ETX = URLDecoder.decode(vars.get("ETX"), "ASCII"); 
vars.put("ETX",ETX);][1] 

Jmeter Script devrait ressembler à ceci: TCP Sampler Jmeter script