har2ammo
v0.4.2
Published
HAR to ammo.txt
Maintainers
Readme
har2ammo
Генератор патронов из .har файлов в ammo.txt для yandex-tank.
Возможности
- генерация патронов из HAR файла;
- фильтрация по домену (не генерирует патроны к внешним ресурсам);
- возможность заменять оригинальные cookies своими;
- возможность удалять все cookies;
- автоматическое тегирование патронов;
- установка собственных заголовков;
- конфигурирование с помощью
config.json.
Описание config.json
По умолчанию файл config.json имеет следующий вид:
{
"autoTag": true,
"host": null,
"excludeHostRegexp": false,
"pathFilterRegexp": false,
"excludePathFilterRegexp": false,
"clearCookies": false,
"customCookies": false,
"replaceDateInURL": false,
"repeat": 0,
"customHeaders": [{
"name": "User-Agent",
"value": "yandex-tank yandex-tank/har2ammo"
}]
}где:
autoTag- включить автоматическое тегирование патронов, возможные варианты -true|false. В качестве тега используется относительный путь к цели.host- имя хоста (мишени), запросы на другие хосты в ленту не попадут, возможные варианты - строка (youdomain.com) или регулярное выражение, запросы на который, фильтр не будет блокировать |false- выключает фильтрацию |null- в качестве базового хоста будет использоваться домен, к которому был первый запрос вharфайле;excludeHostRegexp- имя хоста (мишени), запросы на другие хосты в ленту не попадут, возможные варианты - строка (youdomain.com) или регулярное выражение, запросы на который, фильтр будет блокировать |false- выключает фильтрацию;pathFilterRegexp- регулярное выражение для фильтрации запросов поpath, не прошедшие фильтр запросы в ленту не попадут, возможные варианты -false|string. Например,"^\/api\/(user|config)"- оставит только запросы, начинающиеся с/api/userили/api/config;excludePathFilterRegexp- регулярное выражение для фильтрации запросов поpath, прошедшие фильтр запросы в ленту не попадут, возможные варианты -false|string. Например,"^\/api\/(user|config)"- исключит все запросы, начинающиеся с/api/userили/api/config;clearCookies- удаляет любые cookies из запросов;customCookies- позволяет использовать собственные cookies, возможные варианты -string|array. В случаи, когда передается срока - она будет использована во всех запросах. В случаи, когда используется массив - то для каждого элемента массива, будет сгенерирована своя лента и в результате они будет сшиты в конечную ленту.replaceDateInURL- позволяет заменять в запросах dateStamp на актуальный, возможные варианты -true|false|string.false- не заменяет дату,trueзаменяет на текущую,string- подставляет указанное значение.repeat- повторяет генерацию ленты N раз, позволяет увеличить размер ленты за счет многократного ее создания.customHeaders- массив объектов, которые заменят или добавят новые заголовки.
Использование
В самом простом случаи достаточно:
har2ammo -i test.har -o ammo.txt
Для более тонкой настройки - рекомендую воспользоваться файлом конфигурации config.json:
har2ammo -c config.json -i test.har -o ammo.txt
Установка
Для работы har2ammo требуются nodejs и npm.
Установка:
npm install -g har2ammo
