2017-02-28 2 views
1

Je travaille sur les tests fonctionnels d'une API REST en utilisant Jmeter et JSON. J'ai le téléchargement de fichier de travail mais je ne peux pas sembler obtenir le téléchargement de dossier pour fonctionner dans jmeter. Je garde la réponse comme indiqué dans ce post: JMeter - File upload and file download scenarioComment télécharger un fichier dans Jmeter avec juste le contenu du fichier d'origine?

Lorsque je fais cela, je me rapproche, mais pas tout à fait ce dont j'ai besoin. Ceci est et un exemple de ce que je reçois:

--0rVAdzesdQq7VrwJaRoYGm_UHdMD5nhi9_5w4u 
Content-Disposition: form-data; name="api-test"; filename="LIBFILE1.txt" 
Content-Type: text/plain 
Content-Transfer-Encoding: binary 

Library File for Automated Smoke Test 

This file is used to test file library upload for automated smoke tests. 
--0rVAdzesdQq7VrwJaRoYGm_UHdMD5nhi9_5w4u-- 

Comment puis-je obtenir le téléchargement pour enregistrer uniquement le contenu du fichier? Dans cet exemple, il doit être:

Library File for Automated Smoke Test 

This file is used to test file library upload for automated smoke tests. 

Ceci est un fichier texte simple. Je voudrais également télécharger les autres formats que je télécharge y compris jpg, png, docx, pdf mais il ne sera pas juste s'il a ces données supplémentaires venant avec lui. Je me dis qu'une fois que je vais travailler sur un simple fichier texte, cela m'aidera à obtenir les types de fichiers les plus difficiles.

Répondre

1

Eh bien, l'écouteur Save Responses to a file stockera les données que vous pouvez observer dans l'onglet "Données de réponse" de l'écouteur View Results Tree. Si vous voyez ces Content-Type, Content-Disposition, etc. en-têtes comme données de réponse - le plus probablement votre téléchargement n'a pas réussi car vous ne devriez pas obtenir les en-têtes de cette façon.

Je vous recommande de vérifier que la même requête en cours d'exécution via le navigateur ou l'outil Postman renvoie la même réponse et corrige votre script JMeter en cas de différences.

Voir l'article Performance Testing: Upload and Download Scenarios with Apache JMeter pour plus de détails sur la façon d'imiter correctement les opérations de fichiers avec JMeter.


Une manière alternative de l'enregistrement des données de réponse dans un fichier utilise JSR223 Listener, étant donné que vous sélectionnez « groovy » dans le menu déroulant de la langue, vous devriez être en mesure d'enregistrer la réponse en utilisant le script simple suivant:

new File("/path/to/your/file.txt").setBytes(prev.getResponseData()) 
+0

Merci, cela a aidé. Tu avais raison. J'ai dû le télécharger sans aucun type de jeu MIME et maintenant je peux le télécharger sans les trucs supplémentaires. – joCha