Документация Руководство по CLI

Mockarty CLI

Mockarty CLI – это мощный инструмент командной строки для мокирования API, тестирования, фаззинга, нагрузочного тестирования и интеграции с CI/CD. Работает в автономном режиме (бесплатно, сервер не требуется) и в подключённом режиме (с сервером Mockarty для полного доступа к возможностям платформы).

Без зависимостей. Один бинарник. Работает офлайн. 5 форматов отчётов.

URL-адреса в примерах: Во всех примерах используется localhost:5770 как адрес Mockarty по умолчанию. Если ваш экземпляр работает на удалённом сервере, замените localhost:5770 на реальный адрес (например, https://mockarty.company.com или http://192.168.1.50:5770). Подробнее — в разделе Полезные функции и советы.

Установка

macOS / Linux

curl -sSL https://mockarty.ru/install.sh | sh

Homebrew

brew install mockarty/tap/mockarty-cli

Go

go install github.com/mockarty/mockarty-cli@latest

Docker

docker run --rm mockarty/cli version

Проверка установки:

mockarty-cli version

Быстрый старт

1. Запуск автономного мок-сервера

echo '{"id":"hello","http":{"route":"/hello/:name","httpMethod":"GET"},
  "response":{"statusCode":200,"payload":{"message":"Hello, $.pathParam.name!","uuid":"$.fake.UUID"}}}' > mock.json

mockarty-cli serve -f mock.json --port 8080
curl http://localhost:8080/hello/World
# {"message":"Hello, World!","uuid":"a1b2c3d4-..."}

2. Запуск коллекции API-тестов

mockarty-cli run -f collection.json --reporter cli --reporter html:report.html

3. Создание мока на подключённом сервере

mockarty-cli login --server https://mockarty.company.com --token mk_xxx
mockarty-cli mock create -f mock.json

Конфигурация

Настройка URL сервера

По умолчанию mockarty-cli подключается к управляемому облаку Mockarty (https://cloud.mockarty.com). Переопределить таргет — локальный инстанс make rebuild, self-hosted-узел или air-gapped-развёртывание — можно одним из четырёх способов. Строки выше перебивают строки ниже.

Источник Пример Сохраняется между shell’ами
флаг --server mockarty-cli --server http://localhost:5780 mock list Нет, поштучно
env MOCKARTY_SERVER export MOCKARTY_SERVER=http://localhost:5780 Да, текущая оболочка
~/.mockarty/config.yaml mockarty-cli config set server_url https://mockarty.internal.corp Да, все оболочки
Облачный default в бинарнике https://cloud.mockarty.com

Старая переменная MOCKARTY_SERVER_URL по-прежнему работает как синоним MOCKARTY_SERVER — старые CI-скрипты не сломаются. Если установлены обе, побеждает MOCKARTY_SERVER.

Подробнее — в Подключение к серверу.

Аутентификация

# OAuth (рекомендуется; использует текущий URL сервера — облако по умолчанию)
mockarty-cli auth login

# API-токен (CI/CD, скрипты)
mockarty-cli login --server https://mockarty.company.com --token mk_xxx

# Логин/пароль (интерактивный режим)
mockarty-cli login --server https://mockarty.company.com --user admin --password secret

# Указать имя контекста явно
mockarty-cli login --server https://mockarty.company.com --token mk_xxx --name production

# Проверить текущий статус
mockarty-cli login --status

Переменные окружения (переопределяют конфигурацию, идеально для CI/CD):

Переменная Описание
MOCKARTY_SERVER URL сервера
MOCKARTY_TOKEN API-токен
MOCKARTY_NAMESPACE Пространство имён по умолчанию
MOCKARTY_OUTPUT Формат вывода (table, json, wide, quiet)
NO_COLOR Отключить цветной вывод

Расположение файла конфигурации: ~/.mockarty/config.json

Контексты

Контексты позволяют управлять несколькими подключениями к серверам (аналогично контекстам kubectl):

# Просмотр всех контекстов
mockarty-cli config view

# Список контекстов в виде таблицы
mockarty-cli config get-contexts

# Переключение контекста
mockarty-cli config use-context production

# Создание/обновление контекста вручную
mockarty-cli config set-context staging --server https://staging.company.com --token mk_xxx --namespace test

# Удаление контекста
mockarty-cli config delete-context old-server

Справочник команд

Мок-сервер (serve) – Автономный режим

Запуск локального мок-сервера с полноценным движком резолвера Mockarty. Сервер не требуется.

mockarty-cli serve -f mocks/                              # Из директории
mockarty-cli serve -f mock.json --port 9090               # Один файл, свой порт
mockarty-cli serve --har traffic.har                      # Из HAR-записи
mockarty-cli serve -f mocks/ --proto protos/ --grpc-port 50051  # С gRPC
mockarty-cli serve -f mocks/ --watch                      # Горячая перезагрузка при изменениях
mockarty-cli serve -f mocks/ --cors=false                 # Отключить CORS
Флаг По умолчанию Описание
-f, --file Директория с мок-файлами или один файл
--har HAR-файл для раздачи моков
--port 8080 Порт HTTP-сервера
--host 0.0.0.0 Адрес привязки сервера
--watch false Следить за файлами и перезагружать при изменениях
--cors true Включить CORS-заголовки
--proto Путь к .proto файлам (включает gRPC)
--grpc-port 50051 Порт gRPC-сервера

Поддерживаемые протоколы: HTTP/REST, gRPC (с --proto), SOAP, MCP

Команда serve предоставляет SDK-совместимый CRUD API по адресу /api/v1/mocks, поэтому SDK на Go, Python и Java работают как с автономным serve, так и с admin node.

Управление моками (mock) – Подключённый режим

Управление моками на удалённом сервере Mockarty.

mockarty-cli mock create -f mock.json             # Создать/обновить из файла
mockarty-cli mock create -f mocks/                # Все файлы в директории
cat mock.json | mockarty-cli mock create -f -     # Из stdin

mockarty-cli mock list                            # Список всех моков
mockarty-cli mock list -o json                    # Вывод в JSON
mockarty-cli mock list -o wide                    # Расширенная таблица
mockarty-cli mock list --protocol grpc            # Фильтр по протоколу

mockarty-cli mock get <mock-id>                   # Получить мок по ID
mockarty-cli mock delete <mock-id>                # Удалить мок
mockarty-cli mock logs <mock-id>                  # Просмотр последних вызовов

mockarty-cli mock export -d backup/               # Экспорт в директорию
mockarty-cli mock import -f backup/               # Импорт из файлов

mockarty-cli mock apply -f mocks/                 # Декларативное создание/обновление
mockarty-cli mock apply -f mocks/ --prune         # + удалить моки, которых нет в файлах

Команда apply работает как kubectl apply – создаёт новые моки, обновляет существующие, а с флагом --prune удаляет с сервера моки, отсутствующие в ваших локальных файлах.

Тестирование API (run)

Запуск коллекций API-тестов с assertions и цепочкой переменных.

mockarty-cli run -f collection.json               # Формат Mockarty
mockarty-cli run -f postman-export.json           # Postman v2.1 (автоопределение)
mockarty-cli run --har traffic.har                # Из HAR-записи
mockarty-cli run -f tests/                        # Все коллекции в директории
Флаг По умолчанию Описание
-f, --file Файл коллекции или директория
--har HAR-файл для запуска как тестовая коллекция
--env-file Файл окружения (JSON)
--env-var Переменная inline (KEY=VALUE, можно повторять)
--iterations 1 Количество итераций
--delay 0 Задержка между запросами
--timeout 30s Таймаут на один запрос
--bail false Остановиться при первой ошибке
--reporter cli Формат отчёта (можно повторять)
--folder Выполнить только запросы с данным префиксом имени

Форматы отчётов (все 5 можно использовать одновременно):

mockarty-cli run -f tests.json \
  --reporter cli \
  --reporter json:results.json \
  --reporter junit:report.xml \
  --reporter allure:allure-results \
  --reporter html:report.html
Формат Тип Описание
cli Терминал Цветной вывод в терминал
json:FILE JSON Машиночитаемые результаты
junit:FILE XML JUnit XML для CI/CD
allure:DIR JSON Allure Report Server
html:FILE HTML Автономный HTML-отчёт с логотипом Mockarty

Коды выхода: 0 = все тесты прошли, 1 = есть ошибки, 2 = ошибка выполнения.

Фаззинг безопасности (fuzz)

Фаззинг API-эндпоинтов для поиска уязвимостей. Бесплатный тариф: 1 поток, максимум 2 минуты.

mockarty-cli fuzz --target http://api.com --spec openapi.yaml
mockarty-cli fuzz --target http://api.com --har traffic.har --strategy all
mockarty-cli fuzz --target http://api.com --spec openapi.yaml \
  --strategy mutation --duration 5m --threads 4 \
  --out json:findings.json --out junit:fuzz-report.xml
Флаг По умолчанию Описание
--target Целевой URL для фаззинга (обязательный)
--spec Файл спецификации OpenAPI/Swagger
--har HAR-файл с начальными запросами
--strategy security Стратегия: security, mutation, all
--duration 2m Длительность фаззинга
--threads 1 Количество параллельных потоков
--timeout 10s Таймаут на один запрос
--auth Значение заголовка Authorization
--categories Конкретные категории: sqli, xss, command_injection, path_traversal
--out Формат вывода (можно повторять): json:FILE, junit:FILE, allure:DIR

Стратегии:

Стратегия Что тестирует
security SQL-инъекции, XSS, инъекции команд, обход путей
mutation Путаница типов, граничные значения, интеллектуальная мутация значений
all Все стратегии вместе

Нагрузочное тестирование (perf)

Нагрузочное тестирование с JavaScript-скриптами. Бесплатный тариф: 5 VU, максимум 2 минуты, максимум 100 RPS.

mockarty-cli perf run script.js
mockarty-cli perf run script.js --vus 50 --duration 5m
mockarty-cli perf run script.js --rps 200
mockarty-cli perf run --har traffic.har --vus 5 --duration 30s
mockarty-cli perf run script.js --out json:results.json --out html:report.html
Флаг По умолчанию Описание
--vus 1 Количество виртуальных пользователей
--duration 30s Длительность теста
--rps 0 Целевое количество запросов в секунду (0 = темп задаётся VU)
--har HAR-файл для генерации нагрузочного теста
--out Формат вывода (можно повторять): json:FILE, html:FILE

Контрактное тестирование (contract)

Валидация моков, верификация реальных сервисов, обнаружение дрейфа, проверка безопасности деплоя и управление реестром API.

# Валидация моков по спецификации (требуется подключённый сервер)
mockarty-cli contract validate --spec openapi.yaml

# Верификация живого сервиса по спецификации
mockarty-cli contract verify --spec openapi.yaml --target http://api.staging.com
mockarty-cli contract verify --spec openapi.yaml --target http://api.staging.com --timeout 120s

# Обнаружение дрейфа моков — сравнение моков с ответами реального API
mockarty-cli contract drift --target http://api.staging.com

# Проверка безопасности деплоя версии сервиса
mockarty-cli contract can-i-deploy --participant user-service
mockarty-cli contract can-i-deploy --contracts contract-id-1,contract-id-2

# Реестр API — список опубликованных API-спецификаций
mockarty-cli contract registry list
Подкоманда Описание
validate Валидация моков по OpenAPI-спецификации (подключённый режим)
verify Верификация живого сервиса по OpenAPI-спецификации
drift Сравнение моков с ответами реального API для обнаружения структурных различий
can-i-deploy Проверка, что все контракты потребителей проходят перед деплоем
registry list Список API, опубликованных в реестре

Коды выхода: 0 = контракт валиден / безопасно деплоить, 1 = найдены нарушения / обнаружен дрейф, 2 = ошибка выполнения.

Хаос-инженерия (chaos) – PRO

Запуск хаос-экспериментов против Kubernetes-кластеров. Требуется PRO-лицензия и настроенный K8s-кластер.

Управление кластерами:

# Добавить K8s-кластер в конфигурацию CLI
mockarty-cli chaos cluster add --name staging --kubeconfig ~/.kube/config --context staging-ctx
mockarty-cli chaos cluster add --name prod --kubeconfig ~/.kube/prod.yaml \
  --allowed-namespaces app,test --denied-namespaces kube-system

# Список, переключение, проверка, инспекция, удаление кластеров
mockarty-cli chaos cluster list
mockarty-cli chaos cluster use staging
mockarty-cli chaos cluster test
mockarty-cli chaos cluster info
mockarty-cli chaos cluster remove old-cluster

Запуск экспериментов:

# Запуск из флагов
mockarty-cli chaos run --type pod_kill --k8s-namespace app --selector app=web --duration 5m
mockarty-cli chaos run --type network_partition --deployment my-svc --k8s-namespace app --duration 2m --auto-rollback

# Запуск из YAML-файла
mockarty-cli chaos run -f experiment.yaml

# Запуск из пресета
mockarty-cli chaos preset list
mockarty-cli chaos preset run --preset chaos-monkey --k8s-namespace app --selector app=web
mockarty-cli chaos preset run --preset network-partition --k8s-namespace app --selector app=api --duration 3m

Жизненный цикл экспериментов:

mockarty-cli chaos list                               # Список экспериментов
mockarty-cli chaos list --status active               # Фильтр по статусу
mockarty-cli chaos get <experiment-id>                # Детали эксперимента
mockarty-cli chaos abort <experiment-id>              # Прервать активный эксперимент
mockarty-cli chaos report <experiment-id>             # JSON-отчёт
mockarty-cli chaos report <experiment-id> --format html --output report.html

Управление оператором (K8s):

mockarty-cli chaos operator install                   # Установить оператор хаоса
mockarty-cli chaos operator install --namespace mockarty-chaos
mockarty-cli chaos operator status                    # Проверить состояние оператора
mockarty-cli chaos operator uninstall                 # Удалить оператор

Интерактивный TUI:

mockarty-cli tui chaos                                # Интерактивный TUI
Подкоманда Описание
cluster add/list/use/test/info/remove Управление подключениями к K8s-кластерам
run Запуск эксперимента из флагов или YAML-файла
preset list/run Список и запуск пресетов экспериментов
list Список экспериментов (фильтр через --status)
get Детали эксперимента
abort Прервать активный эксперимент
report Скачать отчёт (JSON или HTML)
operator install/status/uninstall Управление оператором хаоса в K8s
tui Интерактивный TUI-режим

Встроенные пресеты: chaos-monkey, network-partition, scale-to-zero, resource-pressure, rolling-restart-storm, dns-disruption.

Типы сбоев: pod_kill, pod_kill_random, network_partition, network_delay, network_loss, deployment_restart, scale, node_drain, resource_stress, dns_disruption, io_chaos, time_chaos.

Управление кластером (cluster) – Подключённый режим

Управление Kubernetes-кластером Mockarty через API admin-узла.

mockarty-cli cluster status                            # Показать статус кластера
mockarty-cli cluster upgrade --tag 1.3.0               # Обновить все компоненты
mockarty-cli cluster scale resolver --replicas 5       # Масштабировать компонент
mockarty-cli cluster restart runner                    # Rolling-перезапуск
mockarty-cli cluster logs <pod-name> --tail 100        # Стриминг логов пода
mockarty-cli cluster logs <pod-name> --follow          # Следить за логами

# Добавление/удаление интеграций
mockarty-cli cluster add-runner --name sandbox-runner --namespace sandbox
mockarty-cli cluster add-resolver --name shared-resolver --scope admin --replicas 2
mockarty-cli cluster remove-integration sandbox-runner
Подкоманда Описание
status Общий статус кластера и состояние компонентов
upgrade Обновление всех компонентов на новый тег образа
scale Масштабирование компонента (admin, resolver, runner, orchestrator)
restart Rolling-перезапуск компонента
logs Стриминг логов конкретного пода
add-runner Добавить runner-интеграцию в кластер
add-resolver Добавить resolver-интеграцию в кластер
remove-integration Удалить интеграцию по имени

Генерация кода (generate)

Генерация определений моков из API-спецификаций, HAR-записей и коллекций Postman.

# Из OpenAPI (через подключённый сервер)
mockarty-cli generate openapi spec.yaml -o mocks/
mockarty-cli generate openapi spec.yaml --upload    # Сгенерировать и загрузить на сервер

# Из HAR-записи (локально)
mockarty-cli generate har recording.har -o mocks/

# Из коллекции Postman (локально)
mockarty-cli generate postman collection.json -o mocks/
Подкоманда Описание
openapi Генерация моков из OpenAPI/Swagger-спецификации (сервер или локально)
har Генерация моков из HAR-записи (локально)
postman Конвертация коллекции Postman в формат моков Mockarty (локально)

Утилиты

Проверка здоровья:

mockarty-cli health                        # Проверить состояние сервера
mockarty-cli health --verbose              # Подробная информация (версия, аптайм, лицензия)
mockarty-cli health --wait --timeout 60s   # Ждать до состояния healthy

Ожидание готовности (CI/CD):

mockarty-cli wait                                  # Ждать healthy-статуса
mockarty-cli wait --mocks user-api,order-api       # Ждать конкретных моков
mockarty-cli wait --mock-count 5                   # Ждать N моков
mockarty-cli wait --timeout 120s --interval 5s     # Свои таймауты

Проброс портов:

mockarty-cli tunnel --local 5770 --remote server:5770
mockarty-cli tunnel --local 50051 --remote server:50051   # gRPC

Управление хранилищами (подключённый режим):

mockarty-cli store global get                          # Получить все значения глобального хранилища
mockarty-cli store global set <key> <value>            # Установить пару ключ-значение
mockarty-cli store global delete <key>                 # Удалить ключ
mockarty-cli store chain get <chain-id>                # Получить значения цепочного хранилища
mockarty-cli store chain set <chain-id> <key> <value>  # Установить пару ключ-значение в цепочке
mockarty-cli store chain delete <chain-id> <key>       # Удалить ключ из цепочки

Управление пространствами имён (подключённый режим): (алиас: ns)

mockarty-cli namespace current                 # Показать текущее пространство имён
mockarty-cli namespace use <name>              # Установить пространство имён по умолчанию
mockarty-cli namespace list                    # Список доступных пространств имён
mockarty-cli namespace create <name>           # Создать новое пространство имён
# Короткая форма:
mockarty-cli ns current

Экспорт журнала аудита (admin):

# CSV-архив для compliance-аудита
mockarty-cli audit export --format csv --output audit.csv

# Syslog RFC 5424 — одна запись на строку, поток в SIEM-коллектор
mockarty-cli audit export --format syslog > audit.log

# ArcSight CEF — прямой ingestion в SIEM (Splunk/ArcSight/QRadar/MaxPatrol/KUMA/RuSIEM)
mockarty-cli audit export --format cef --output audit.cef

# Фильтры по пользователю, действию, ресурсу, namespace, временному окну (мс от эпохи)
mockarty-cli audit export --format json --user-id u-42 --action login \
    --from 1712345678000 --to 1712431678000

Управление токенами (PRO):

mockarty-cli token create --name "ci-runner" --expires 90d
mockarty-cli token list
mockarty-cli token delete <token-id>

Интерактивный TUI:

mockarty-cli tui
mockarty-cli tui --server http://localhost:8080

Навигация стрелками, Enter для перехода внутрь, Esc для возврата, q для выхода. Горячие клавиши: c создать, e редактировать, d удалить, n новый тест, u загрузить, / поиск.

Сниффер трафика (PRO):

mockarty-cli sniff --target http://real-api.com --port 9090 -o traffic.har
# Направьте ваше приложение на localhost:9090, Ctrl+C для остановки и сохранения HAR

AI-агент чат (PRO):

mockarty-cli agent "create a mock for GET /api/users returning a list"
mockarty-cli agent                  # Интерактивный режим чата

Резервное копирование/восстановление (PRO):

mockarty-cli backup create
mockarty-cli backup list
mockarty-cli backup download <id> -o backup.tar.gz

Установка платформы (install, update, setup):

# Установка компонентов платформы
mockarty-cli install mockarty                             # Скачать последний бинарник
mockarty-cli install mockarty --mode docker-compose       # Сгенерировать docker-compose.yml
mockarty-cli install mockarty --mode sqlite               # Режим одного бинарника на SQLite
mockarty-cli install --all                                # Установить все компоненты
mockarty-cli install mockarty --version 1.2.3             # Конкретная версия

# Проверка обновлений
mockarty-cli update

# Сгенерировать конфигурацию развёртывания без скачивания бинарников
mockarty-cli setup docker-compose
mockarty-cli setup env

Управление лицензией:

mockarty-cli license                        # Показать информацию о текущей лицензии
mockarty-cli license features               # Список всех возможностей и их доступность
mockarty-cli license activate <key>         # Активировать PRO-ключ

Версия и выход:

mockarty-cli version                        # Показать версию CLI
mockarty-cli logout                         # Очистить сохранённые учётные данные

Автодополнение в оболочке:

mockarty-cli completion bash|zsh|fish|powershell
# Перенаправьте вывод в директорию автодополнений вашей оболочки

Интеграция с CI/CD

GitHub Actions

name: API Tests
on: [push]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Установка Mockarty CLI
        run: curl -sSL https://mockarty.ru/install.sh | sh

      - name: Запуск мок-сервера
        run: mockarty-cli serve -f mocks/ --port 8080 &

      - name: Ожидание готовности сервера
        run: mockarty-cli wait --server http://localhost:8080 --timeout 30s

      - name: Запуск API-тестов
        run: |
          mockarty-cli run -f tests/ \
            --reporter cli \
            --reporter junit:report.xml \
            --reporter html:report.html

      - name: Фаззинг безопасности
        run: |
          mockarty-cli fuzz --target http://localhost:8080 \
            --spec openapi.yaml \
            --out junit:fuzz-report.xml

      - name: Загрузка результатов тестов
        if: always()
        uses: actions/upload-artifact@v4
        with:
          name: test-reports
          path: |
            report.xml
            report.html
            fuzz-report.xml

GitLab CI

api-tests:
  image: mockarty/cli:latest
  script:
    - mockarty-cli serve -f mocks/ --port 8080 &
    - mockarty-cli wait --server http://localhost:8080
    - mockarty-cli run -f tests/ --reporter junit:report.xml --reporter allure:allure-results
    - mockarty-cli fuzz --target http://localhost:8080 --spec openapi.yaml --out junit:fuzz-report.xml
  artifacts:
    when: always
    reports:
      junit: [report.xml, fuzz-report.xml]
    paths: [allure-results/]

Коды выхода упрощают интеграцию с CI: 0 = успех, 1 = ошибки, 2 = ошибка выполнения.

Drop-in замена allurectl / testit-cli

mockarty-cli определяет имя бинаря, под которым он вызван, и
автоматически роутит в нужный subcommand. То есть CI-пайплайн,
который сейчас вызывает allurectl upload или testit-cli testrun create, может остаться без изменений — просто подменяем бинарь:

# Symlink (Linux / macOS):
ln -s /usr/local/bin/mockarty-cli /usr/local/bin/allurectl
ln -s /usr/local/bin/mockarty-cli /usr/local/bin/testit-cli

# Или rename для герметичного образа:
cp mockarty-cli allurectl

# Или copy + rename в Dockerfile:
COPY mockarty-cli /usr/local/bin/allurectl

Дальше указываем стандартные env-vars на Mockarty-сервер и запускаем
те же команды что и раньше:

export ALLURE_ENDPOINT=https://mockarty.company.com
export ALLURE_TOKEN=mk_...
export ALLURE_PROJECT_ID=qa-team

allurectl upload ./allure-results        # → 'mockarty-cli allure upload'
allurectl launch create --name "PR-42"   # → 'mockarty-cli allure launch create'

Аналогично для TestIT — все TMS_URL / TMS_PRIVATE_TOKEN /
TMS_PROJECT_ID уважаются subcommand’ом testit, поэтому
переименование бинаря в testit-cli оставляет CI-скрипт нетронутым.

Распознаваемые имена (без учёта регистра, с опциональным .exe):

Имя бинаря Маршрутизируется в
allurectl mockarty-cli allure …
testit, testit-cli, testitcli, tms-cli mockarty-cli testit …

TestIT — конфигурационные UUID

Стандартный workflow testit-cli требует configuration UUID
(--configuration-id или TMS_CONFIGURATION_ID) для каждого
тест-рана. Два хелпера в поддереве testit configuration позволяют
управлять значением без TestIT admin UI:

# Сгенерировать свежий UUID4 и сразу записать в env-var:
export TMS_CONFIGURATION_ID="$(mockarty-cli testit configuration generate)"

# Показать configuration UUID'ы, уже встречавшиеся в недавних
# external-прогонах текущего namespace (сортированно, без дублей):
mockarty-cli testit configuration list --limit 100

# JSON-вывод для скриптов:
mockarty-cli testit configuration list --format json --since 2026-05-01T00:00:00Z

list сканирует case_context.metadata.testit.configurationId
в недавних прогонах namespace и выводит уникальные значения.
generate — оффлайн, без сетевого вызова, просто UUID4 — работает
в cold-boot CI до настройки Mockarty endpoint.

Бесплатная версия vs PRO

Возможность Бесплатно PRO
Мок-сервер (HTTP, gRPC, SOAP, MCP) Да Да
Запуск тестов (Mockarty + Postman + HAR) Да Да
Все форматы отчётов (CLI, JSON, JUnit, Allure, HTML) Да Да
Контрактное тестирование Да Да
Интерактивный TUI Да Да
Проброс портов (tunnel) Да Да
Установщик платформы Да Да
Автодополнение в оболочке Да Да
Фаззинг (1 поток, 2 мин) Да Да
Нагрузочное тестирование (5 VU, 2 мин) Да Да
Фаззинг без ограничений (потоки, длительность) Да
Нагрузочное тестирование без ограничений (VU, длительность) Да
Сниффер трафика (экспорт HAR) Да
AI-агент чат Да
Резервное копирование / восстановление Да
Управление токенами Да
Управление моками в подключённом режиме Да
Управление кластером (K8s) Да

PRO активируется подключением к лицензированному серверу Mockarty или установкой переменной MOCKARTY_LICENSE_KEY.

Форматы вывода

Все команды, отображающие данные, поддерживают флаг -o:

Формат Флаг Описание
Table -o table По умолчанию. Человекочитаемые выровненные колонки
Wide -o wide Расширенная таблица с дополнительными колонками
JSON -o json Машиночитаемый вывод в JSON
Quiet -o quiet Только ID, по одному на строку (для скриптов)

Примеры:

mockarty-cli mock list -o json | jq '.[] | .id'
mockarty-cli mock list -o quiet | xargs -I{} mockarty-cli mock delete {}
mockarty-cli mock list -o wide

Установка формата по умолчанию через переменную окружения: export MOCKARTY_OUTPUT=json

Глобальные флаги

Эти флаги работают со всеми командами:

Флаг Переменная окружения Описание
--server MOCKARTY_SERVER URL сервера Mockarty
--token MOCKARTY_TOKEN API-токен
--namespace MOCKARTY_NAMESPACE Целевое пространство имён
-o, --output MOCKARTY_OUTPUT Формат вывода
--insecure MOCKARTY_TLS_INSECURE Пропустить проверку TLS
--no-color NO_COLOR Отключить цветной вывод

Устранение проблем

Симптом Причина Решение
mockarty-cli: command not found Бинарь не в PATH Переместите его в /usr/local/bin/ или добавьте директорию в PATH
connection refused Сервер не запущен или неверный URL в --server Проверьте MOCKARTY_SERVER и выполните mockarty-cli health
401 unauthorized Отсутствует или истёк API-токен Выполните mockarty-cli login ещё раз или явно задайте MOCKARTY_TOKEN
403 forbidden на пространстве имён Токен ограничен другим пространством Используйте --namespace <ns> или токен с доступом к нужному пространству
x509: certificate signed by unknown authority Самоподписанный сертификат на сервере Добавьте --insecure для локальной разработки или установите CA-сертификат сервера на вашу машину
perf run падает с «free tier limit exceeded» VUs, RPS или длительность выше лимитов бесплатной версии Уменьшите значения или перейдите на PRO; см. Нагрузочное тестирование
mock create возвращает 409 conflict Мок с таким ID уже существует Удалите существующий мок через mockarty-cli mock delete <id> и пересоздайте или задайте уникальный ID
HAR-импорт даёт пустой результат В HAR-файле нет HTTP/HTTPS-записей (или все отфильтрованы) Проверьте HAR-файл в просмотрщике и пересохраните, отключив фильтры браузера
Установка chaos-оператора не находит kubeconfig Не задан KUBECONFIG или файл отсутствует Экспортируйте KUBECONFIG=~/.kube/config или передайте --kubeconfig <путь> в mockarty-cli chaos cluster add

Для проблем с подключением повторите команду с mockarty-cli health --verbose, чтобы увидеть полный ответ сервера, либо задайте MOCKARTY_OUTPUT=json для машинного формата.

Связанная документация