2016-06-01 11 views
0

Ich bin neu in JMeter und ich versuche, es für Rest-API-Tests zu verwenden. Ich möchte einen Sitzungsschlüssel (oder Token) nach der Identifizierung erhalten.Wie testen Web-Service mit Jmeter

Wie kann ich diesen Schlüssel an die anderen Tests weitergeben, damit ich ihn dort als Header verwenden kann?

Beispiel des Tests:

1./identification

2./addCity

3./showListCities

I perefer Code java, weil ich jmeter und Java verwenden Web-Interface implemente .

+0

Es sieht so aus, als ob Sie möchten, dass wir einen Code für Sie schreiben. Während viele Benutzer bereit sind, Code für einen in Not geratenen Coder zu produzieren, helfen sie normalerweise nur, wenn das Poster bereits versucht hat, das Problem selbst zu lösen. Eine gute Möglichkeit, diesen Aufwand zu demonstrieren, besteht darin, den Code, den Sie bisher geschrieben haben, die Beispieleingabe (falls vorhanden), die erwartete Ausgabe und die Ausgabe, die Sie tatsächlich erhalten (Konsolenausgabe, Trace-Backs usw.), einzubeziehen. Je mehr Details Sie angeben, desto mehr Antworten erhalten Sie wahrscheinlich. Überprüfen Sie die [FAQ] (http://meta.stackexchange.com/q/7931) und [fragen] (https://stackoverflow.com/help/asking). –

+1

Warum googelst du es nicht zuerst? Es gibt viele Antworten. 1: http: //artoftesting.com/performanceTesting/restAPIJMeter.html 2: http://www.testautomationguru.com/how-to-test-rest-api-using-jmeter/ –

Antwort

0

Je nachdem, wo der Schlüssel oder befindet Token müssen Sie es extrahieren mit:

Sobald Sie es in eine JMeter Variable extrahieren können Sie HTTP Header Manager verwenden in um den relevanten Header hinzuzufügen. Sie benötigen den HTTP Header Manager in jedem Fall, um mindestens Content-Type Header mit dem Wert application/json zu senden.

Wenn Sie Java-Code bevorzugen, überprüfen Sie JMeter API, aber ich bin ziemlich sicher, dass GUI-Weg wird viel schneller und einfacher.

0

Dies hängt davon ab, ob Sie eine Reihe von API-Aufrufen innerhalb derselben Thread-Gruppe oder über verschiedene Thread-Gruppen tätigen. Während der oben erwähnte RegEx Extractor Ihnen erlaubt, Parameter in Variablen zu speichern, müssen Sie sich daran erinnern, dass Jmeter-Variablen lokal und nicht global sind. Wenn Sie also beabsichtigen, den Parameter in anderen Thread-Gruppen erneut zu verwenden, fügen Sie eine Beanshell-Assertion hinzu und verwenden Sie "setProperty", um Ihre Variable zu speichern.