Fork me on GitHub

Herr Knedel/Крутые штуки с Atlassian: использование Bamboo и jMeter без плагинов

Created Sun, 21 Mar 2021 00:00:00 +0000 Modified Sat, 02 Apr 2022 16:13:43 +0000 Уровень сложности: Не слишком легко и не слишком трудно

254 Words

Сегодня я создаю тест jMeter в Bamboo. Конечно, вы также можете реализовать эту тестовую установку с помощью бегунов Gitlab или ведомых Jenkins.

Шаг 1: Создайте тест jMeter

Сначала, конечно, нужно создать тест jMeter. Я загрузил jMeter со следующего url https://jmeter.apache.org/ и запустил его с помощью этой команды:

x
+
Terminal

$ java -jar bin/ApacheJMeter.jar

Смотрите:Мой демо-тест для этого руководства содержит неисправные и работающие семплеры. Я специально установил очень низкие тайм-ауты. Я сохраняю с помощью JMX-файла для своей задачи Bamboo.

Шаг 2: Подготовьте бамбуковое средство

Поскольку Java является необходимым условием для агентов Bamboo, я устанавливаю Python только после этого.

x
+
Terminal

$ apt-get update
$ apt-get install python

Я создаю новое задание и задание оболочки. И вставьте этот сценарий оболочки:

#!/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

Каталог инструментов фиксирован на машине и не является частью репозитория проекта. Кроме того, я использую этот скрипт 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)

Я также создаю шаблон артефактов для журналов результатов.

Готов!

Теперь я могу выполнять свою работу. После того, как я изменил таймауты, тест также стал “зеленым”.