Apache JMeterAan de slag met Apache JMeter


Opmerkingen

JMeter is een tool voor het testen van belastingen die wordt gebruikt voor prestatietests . Een Tester kan acties in een webbrowser op te nemen of handmatig een script die vervolgens kan worden uitgevoerd met honderden of duizenden gebruikers op te bouwen.

JMeter kan worden gebruikt om ongelooflijk dynamische gebruikers en scenario's te maken met behulp van de verschillende elementen. De CSV Data Set Config kan bijvoorbeeld worden gebruikt om een set gebruikers op te geven om in te loggen bij een webtoepassing. De Regular Expression Extractor of de CSS / JQuery Extractor kunnen worden gebruikt om sessie-ID's op te slaan die in toekomstige aanvragen moeten worden gebruikt. De JSR223 PreProcessor gekoppeld aan Groovy- taal kan worden gebruikt om dynamische unieke gegevens te creëren voor elke gebruiker die moet worden verzonden als onderdeel van een POST body.

versies

Versie Java-versie Publicatiedatum
3.2 Java 8+ 2017/04/14
3.1 Java 7+ 2016/11/20
3.0 Java 7+ 2016/05/17
2.13 Java 6+ 2015/03/13
2.12 Java 6+ 2014/11/10
2.11 Java 6+ 2014/01/05
2.10 Java 6+ 2013/10/21
2.9 Java 6+ 2013/01/28
2.8 Java 5+ 2012/10/06
2.7 Java 5+ 2012-05-27
2.6 Java 5+ 2012-02-01
2.5.1 Java 5+ 2011-10-03
2.5 Java 5+ 2011-08-17
2.4 Java 5+ 2010-07-12
2.3.4 Java 1.4+ 2009-06-21

Installatie of instellingen

  1. Download een gedistribueerd archief van de Binaries-sectie van JMeter van de Download Apache JMeter- pagina.

  2. Afhankelijk van de versie die u hebt gedownload, controleert u de minimale vereisten voor Java-versies en installeert u Java indien nodig. Zorg ervoor dat de omgevingsvariabele JAVA_HOME is ingesteld en naar een juiste versie JAVA_HOME .

  3. Pak het distributiearchief uit in de map van uw keuze.

  4. Open JMeter UI:

    • In Windows : ga naar de <jmeter_location>\bin en voer jmeterw.bat of jmeter.bat

    • Op Linux / Mac : ga naar de <jmeter_location>/bin en voer jmeter of 'jmeter.sh` uit.

      Bijvoorbeeld:

      cd /Users/me/apache-jmeter/bin
      ./jmeter 
       

      Opmerking : als de bovenstaande opdracht mislukt met Permission denied fout Permission denied , stel dan de machtiging jmeter op het jmeter bestand:

      cd /Users/me/apache-jmeter/bin
      chmod u+x ./jmeter
       

Als u de gebruikersinterface van JMeter kunt zien, was de basisinstelling succesvol.

JMETER_UI

Overzicht van Apache JMeter-componenten op hoog niveau

Apache JMeter heeft alle componenten gescheiden in de volgende groepen op basis van hun functionaliteit:

  1. Test Plan : startpunt voor scripting. JMeter slaat het testplan op in .jmx-formaat. U voegt componenten aan het testplan toe door met de rechtermuisknop op de testpand te klikken en naar het component te navigeren dat u wilt toevoegen.
  2. Workbench : Is een tijdelijke plek om te beginnen met scripten. Samen met alle componenten die beschikbaar zijn in Test Plan, je krijgt HTTP(s) Test Script Recorder om record van de browser acties. Scripts kunnen worden opgeslagen in de Workbench, mits u het aankruisvak "Save Workbench" aanvinkt, anders zijn ze niet.
  3. Threads (Users) : u kunt een aantal (virtuele) gebruikers definiëren om uit te voeren, oplooptijd en aantal lussen. u kunt ook in het testplan bepalen of draadgroepen opeenvolgend of parallel moeten worden uitgevoerd in het geval van meerdere draadgroepen. enkele voorbeelden zijn Thread Group, setUp Thread Group, and tearDown Thread Group
  4. Logic Controller : hiermee kunt u de stroom van uitvoering en groepering van de samplers definiëren. een van de handige voorbeelden is Transaction Controller, waar u alle samplers van de inlogpagina combineert (alle bronnen inclusief afbeeldingen, .css- en .js-bestanden) zodat de gecombineerde responstijd kan worden opgehaald.
  5. Sampler : Sampler is de kern van de JMeter. Het geeft componenten om aanvragen van verschillende protocollen zoals HTTP, JDBC, FTP, SMTP etc. te simuleren. Met HTTP sampler kunt u bijvoorbeeld een HTTP-pakket (van GET, POST of andere ondersteunde methoden) simuleren. Hoofdstroomprotocollen worden ondersteund, voor anderen kunt u gratis of commerciële plug-ins gebruiken.
  6. Config Element : configuratie-elementen kunnen worden gebruikt om standaardwaarden en variabelen in te stellen voor later gebruik door samplers. Merk op dat deze elementen meestal worden verwerkt aan het begin van het bereik waarin ze worden gevonden, dat wil zeggen vóór eventuele samplers in hetzelfde bereik. CSV Dataset Config stelt u in staat om testgegevens zoals gebruikersnamen, wachtwoorden of Login-scenario from a file . User Defined variables configuratie-element kunt u variabelen definiëren die in het testplan kunnen worden gebruikt, maar waarbij elke thread een eigen kopie heeft.
  7. Timer : standaard voert een JMeter-thread samplers in volgorde uit zonder te pauzeren. De hier gepresenteerde componenten bieden de functionaliteit om User Think Time in verschillende vormen onder samplers te introduceren. enkele voorbeelden zijn Constant Timer, Constant Throughput Timer.
  8. Pre Processors : hiermee kunt u bewerkingen / acties uitvoeren voordat de sampler wordt uitgevoerd. JSR223 Pre Processor met Apache Groovy (vergelijkbaar met Java-coderingsstijl) stelt u in staat de sampler te wijzigen voordat deze wordt verzonden.
  9. Post Processors : hiermee kunt u bewerkingen / acties uitvoeren nadat de sampler is uitgevoerd. enkele nuttige voorbeelden zijn het ophalen van dynamische waarde, zoals sessie-ID, het gebruik van de Regular Expression Extractor voor elk type tekst, CSS/JQuery Extractor voor HTML, JSON Extractor voor JSON, XPath Extractor voor XML.
  10. Assertions : Zoals de naam al doet vermoeden, kunt u het antwoord van samplers op verschillende manieren beweren, bijvoorbeeld door naar tekst te zoeken, de grootte van het antwoord en de duur om het antwoord te ontvangen, enz. U kunt bijvoorbeeld Response Assertion gebruiken om naar tekst te zoeken in de reactie. Als Assertion mislukt, markeert JMeter de sampler waarop Assertion is toegepast als Failure.
  11. Luisteraars: luisteraars stellen u in staat om de testresultaten op te slaan, de testuitvoering te bekijken, enz. Zo kunt u bijvoorbeeld met behulp van View Results Tree bekijken de aanvraag / reactie van de sampler zien en of deze gemarkeerd zijn als PASS (groene kleur) / FAIL (rode kleur) door JMeter. met Aggregate Report kunt u de testresultaten opslaan in CSV-indeling. Belangrijke opmerking is dat u luisteraars gebruikt vóór de testrun (voor testscript-foutopsporing) of na de testrun (om resultaten in grafieken of samenvatting te bekijken) maar niet tijdens de run. we moeten de luisteraars tijdens de test verwijderen, omdat deze veel systeembronnen verbruiken. We voeren de test dus uit in niet-GUI-modus en slaan de resultaten op met de optie -l in .csv/.jtl indelingen. Post de test, u kunt deze opgeslagen bestanden in elk van de luisteraars in de JMeter laden om grafieken / samenvatting te bekijken.

Hier volgt de algemene syntaxis ( you add any component on need basis ):

Test Plan
    Thread Group
        Config Element
        Logic Controller
            Pre Processor
            Sampler
            Timer
            Post Processor
            Assertion
        Listener
 

Referenties:

  1. Testplan en componenten
  2. Uitvoeringsopdracht
  3. Scopingregels