Fork me on GitHub

Herr Knedel/Parádne veci s Atlassianom: používanie Bamboo a jMeter bez zásuvných modulov

Created Sun, 21 Mar 2021 00:00:00 +0000 Modified Sat, 02 Apr 2022 16:21:10 +0000 Úroveň obtiažnosti: Nie príliš ľahké a nie príliš ťažké

247 Words

Dnes vytváram test jMeter v programe Bamboo. Samozrejme, toto testovacie nastavenie môžete implementovať aj pomocou Gitlab runnerov alebo Jenkins slave.

Krok 1: Vytvorenie testu jMeter

Najprv musíte samozrejme vytvoriť test jMeter. Stiahol som si jMeter z nasledujúcej url adresy https://jmeter.apache.org/ a spustil ho týmto príkazom:

x
+
Terminal

$ java -jar bin/ApacheJMeter.jar

Pozri:Môj demonštračný test pre tento návod má obsahovať chybné a funkčné vzorkovače. Časové limity som nastavil zámerne veľmi nízko. Uložím súbor JMX pre svoju úlohu Bamboo.

Krok 2: Príprava bambusového prostriedku

Keďže Java je nevyhnutnou podmienkou pre agentov Bamboo, Python inštalujem až potom.

x
+
Terminal

$ apt-get update
$ apt-get install python

Vytvorím novú úlohu a úlohu shell. A vložte tento shell skript:

#!/bin/bash
java -jar /tools/apache-jmeter-5.4.1/bin/ApacheJMeter.jar -n -t test.jmx -l requests.log > result.log

echo "Ergebnis:"
cat result.log

if cat result.log | python /tools/check.py > /dev/null; 
then
    echo "Proceed... Alles Prima!"
    exit 0
else
    echo "Returned an error.... Oje!"
    exit 1
fi

Adresár nástroja je pevne umiestnený v počítači a nie je súčasťou úložiska projektu. Okrem toho používam tento skript Python:

#!/usr/bin/python
import re
import sys
 
for line in sys.stdin:
    print line,
    match = re.search('summary =[\s].*Err:[ ]{0,10}([1-9]\d{0,10})[ ].*',line)
    print 'Check in line if Err: > 0 -> if so Error occured -> Test fails: '
    print match
    if match :
        print "exit 1"
        sys.exit(1)
print "nothing found - exit 0"
sys.exit(0)

Vytvorím tiež vzor artefaktu pre protokoly výsledkov.

Pripravený!

Teraz môžem robiť svoju prácu. Po zmene časových limitov je test tiež “zelený”.