яндекс танка
Генератор патронов дляУстановка
- у вас должен быть установлен nodejs и npm nodesource
# Ubuntucurl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -sudo apt-get install -y nodejs
npm i -g yandex-tank-ammo-generator
Настройка танка
- Пример конфигурации
phantom:address: ya.ru:443ssl: trueheader_http: '1.1'ammofile: ./ammo.txt # ваш пак патроновload_profile:load_type: rps # schedule load by defining requests per secondschedule: line(20, 450, 1m) #const(150, 60)
Утилиты
(При создании файлов расширение будет установлено автоматически)
Генератор тестовых данных из ELASTIC(Graylog,ELK)
Парсит логи из эластика и подготавливает конфиг для генерации патронов
tank-gen-test-data --helptank-gen-test-data -c ./config.json -o ./my_json_conf
Генератор патронов из json
Из заранее подготовленого json генерирует патроны
tank-create-ammo --helptank-create-ammo -u Yandex-Tank-Dev -f ./my_json_conf.json -o myfile
Генератор патронов из ELASTIC(Graylog,ELK)
Парсит логи эластика и сразу генерирует патроны (нет возможности посмотреть конфиг), что по сути обьединяет первые 2 утилиты
tank-gen-ammo--help tank-gen-ammo -c ./config.json -o my_artillery -u Yandex-Tank-Dev
Примеры конфигурационных файлов
tank-gen-test-data и tank-gen-ammo
- tank-create-ammo *
Результат
- Далее патроны можно скармливать танку*
583 POST_/ecommerce/goods/eshop/catalogPOST /ecommerce/goods/eshop/catalog HTTP/1.1Host: i-dev.api.test.abcUser-Agent: Yandex-Tank-DevContent-Type: application/json; charset=utf-8Authorization: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRJZCI6ImEwYjhhNDAyLTdhNmQtNDdkZS05MWFlLWE2OTBhY2U4YzQ3YiIsImlzVGVtcCI6dHJ1ZSwiaWF0IjoxNTk1NjQ0OTgwLCJleHAiOjE1OTYyNDk3ODB9.mrLKgVWVA2_tg5a_21xDKvsrW7uk9aAyzD_rFfL8ujEContent-Length: 187{"cond":{"guids":["150","802","908"]},"sort":"popular","size":24,"page":1,"filters":{"price":{"min":399,"max":1587},"sizes":["28","29"],"deliveryType":"ALL","showRetailGroupsArray":true}}233 POST_/ecommerce/goods/eshop/productsCardPOST /ecommerce/goods/eshop/productsCard HTTP/1.1Host: i-dev.api.test.abcUser-Agent: Yandex-Tank-DevContent-Type: application/json; charset=utf-8Authorization:Content-Length: 46{"articuls":["00906840"],"withTableSize":true}233 POST_/ecommerce/goods/eshop/productsCardPOST /ecommerce/goods/eshop/productsCard HTTP/1.1Host: i-dev.api.test.abcUser-Agent: Yandex-Tank-DevContent-Type: application/json; charset=utf-8Authorization:Content-Length: 46{"articuls":["00906690"],"withTableSize":true}