Формат метрик Bencher (BMF)
Встроенные адаптеры для тестовых стендов преобразуют вывод результатов тестирования в формат JSON формата метрик Bencher (BMF).
Пользовательские тестовые стенды должны выводить свои результаты в формате BMF JSON
и использовать адаптер json
.
Смотрите как отслеживать пользовательские бенчмарки для полного обзора.
Пример JSON в формате Bencher Metric Format (BMF)
{ "benchmark_name": { "latency": { "value": 88.0, "lower_value": 87.42, "upper_value": 88.88 }, "throughput" { "value": 5.55, "lower_value": 3.14, "upper_value": 6.30 } }, "/bin/sh -c ./my_build_script.sh": { "build-time": { "value": 87.0 } }, "my_binary": { "file-size": { "value": 42.0 } }}
В этом примере рассматриваются три Бенчмарка:
benchmark_name
Бенчмарк с двумя Параметрами:- Задержка (
latency
) - Пропускная способность (
throughput
)
- Задержка (
/bin/sh -c ./my_build_script.sh
Бенчмарк с одним параметром для отслеживания времени сборки (build-time
)my_binary
Бенчмарк с одним параметром для отслеживания размера файла (file-size
)
JSON схема формата метрик Bencher (BMF)
Это JSON схема для JSON формата метрик Bencher (BMF):
{ "$id": "https://bencher.dev/bmf.json", "$schema": "http://json-schema.org/draft-07/schema", "type": "object", "patternProperties": { ".+": { "type": "object", "patternProperties": { ".+": { "type": "object", "properties": { "value": { "type": "number" }, "lower_value": { "type": "number" }, "upper_value": { "type": "number" } }, "required": ["value"] } } } }}
bencher mock
Подкоманда CLI bencher mock
используется для генерации тестовых данных в формате Bencher Metric Format (BMF) в формате JSON.
--count <COUNT>
Количество тестовых Бенчмарков для генерации.
--measure <MEASURE>
Измерение, которое будет использоваться для каждого Бенчмарка.
Можно указать несколько Измерений, используя параметр --measure
несколько раз.
По умолчанию используется встроенное Измерение latency
.
--pow <POW>
Степень 10, используемая для тестовых Метрик.
По умолчанию значение — 1
.
--fail
Выполнение с ошибкой.
--flaky
Случайные сбои во время выполнения.
--help
Вывести сообщение помощи.