Mejores Herramientas de Testing de API desde la Terminal en 2026

Compare las principales herramientas de prueba de API basadas en terminal de 2026: Apidog CLI, Hurl, Newman, Bruno CLI, Schemathesis, k6, y más, con comandos de instalación y notas de CI.

Ashley Innocent

Ashley Innocent

12 August 2026

Mejores Herramientas de Testing de API desde la Terminal en 2026

Apidog para empresas

Despliegue local

SSO & RBAC

Conforme con SOC 2

Explorar Apidog Enterprise

Las pruebas de API han salido de la interfaz gráfica de usuario. Las pruebas ahora se ejecutan en contenedores de CI sin pantalla adjunta, en entornos de ensayo a los que solo se accede por SSH, y bajo agentes de IA que solo hablan shell. En los tres lugares, la terminal es donde una prueba pasa o falla sin supervisión humana.

Este resumen clasifica las herramientas que realizan trabajo de prueba real desde una línea de comandos. "Basado en terminal" aquí significa que todo el ciclo se ejecuta en un shell: instalar desde un gestor de paquetes, ejecutar un comando, leer un código de salida. La clasificación pondera las aserciones integradas, los flujos de varios pasos, los informes listos para CI y el estado de mantenimiento. Los clientes manuales como curl todavía se ganan un lugar cerca del final, porque cada flujo de trabajo de terminal se apoya en ellos entre las ejecuciones de pruebas. Para una encuesta más amplia que incluye herramientas GUI y alojadas, consulta el resumen de las mejores herramientas gratuitas para pruebas de API.

botón

Qué diferencia a una herramienta de prueba de un cliente

Un cliente de terminal envía una solicitud y te muestra la respuesta. Una herramienta de prueba de terminal juzga la respuesta e informa el veredicto como un código de salida que tu pipeline puede usar como compuerta. El segundo grupo es el corazón de esta lista, y lo definen cuatro características:

Con los criterios establecidos, aquí están las diez herramientas que valen tu tiempo en 2026.

1. Apidog CLI: crea visualmente, ejecuta sin interfaz gráfica en cualquier lugar

Apidog es una plataforma API todo en uno que cubre diseño, pruebas, mocking y documentación. La CLI de Apidog (apidog-cli en npm) es su brazo de terminal. Construyes escenarios de prueba en el editor visual, con solicitudes encadenadas, variables extraídas y aserciones, luego apidog run las ejecuta desde cualquier shell y entrega a tu pipeline un código de salida limpio.

npm install -g apidog-cli
apidog login --with-token <YOUR_TOKEN>

# Copia el comando exacto de la pestaña CI/CD de tu escenario
apidog run -t <scenario_id> -e <env_id> -r cli

No tienes que adivinar los IDs. Abre el escenario en Apidog, ve a la pestaña CI/CD y copia el comando generado. Los reporteros cubren cli, html, json y junit, escritos en apidog-reports/, de modo que la misma ejecución alimenta una terminal, un panel de control y un almacén de artefactos. Las ejecuciones controladas por datos extraen iteraciones de archivos CSV o JSON. La salida es JSON estructurado con agentHints.nextSteps, lo que permite que un agente de codificación de IA ejecute un conjunto de pruebas y decida su siguiente movimiento sin depender de la captura de pantalla. Requiere Node.js 16 o posterior.

Ideal para: equipos que desean escenarios complejos y de varios pasos creados en un editor y ejecutados de forma idéntica en una computadora portátil, en CI y por agentes. Límite honesto: no es de código abierto y no es un remitente ad-hoc. Los escenarios residen en un proyecto de Apidog, por lo que esta es la opción de plataforma integrada en lugar de una herramienta HTTP simple. La guía completa de Apidog CLI cubre el conjunto completo de comandos.

2. Hurl: pruebas de texto plano en un solo binario de Rust

Hurl ejecuta solicitudes HTTP escritas en formato de texto plano y realiza aserciones sobre las respuestas. Está construido en Rust sobre libcurl y se distribuye como un único binario, por lo que no hay tiempo de ejecución que instalar. Las pruebas se leen casi como HTTP puro, lo que las hace fáciles de revisar en una pull request.

brew install hurl   # o: cargo install --locked hurl

cat > login.hurl <<'EOF'
POST https://api.example.com/login
{ "user": "acme", "pass": "s3cret" }

HTTP 200
[Asserts]
jsonpath "$.token" exists
EOF

hurl --test login.hurl   # salida no cero si una aserción falla

Ideal para: verificaciones de estilo de contrato y pruebas de humo que mantienes en control de versiones como texto legible. La bandera --test lo convierte en una compuerta CI natural. Límite honesto: está enfocado en HTTP, por lo que no controlará gRPC ni generará carga, y la lógica compleja significa más archivos .hurl en lugar de un lenguaje de scripting.

3. Newman: ejecuta colecciones de Postman sin interfaz gráfica

Newman es el ejecutor de línea de comandos de código abierto para colecciones de Postman (Apache-2.0). Si tu equipo ya escribe solicitudes y pruebas en Postman, Newman ejecuta esa misma colección desde una terminal sin GUI. Exportas la colección y el entorno como JSON y apuntas Newman a los archivos.

npm install -g newman

newman run collection.json -e staging.json

Ideal para: equipos que invierten en Postman y que desean que las colecciones existentes se ejecuten en una pipeline sin asientos adicionales. Sale con un código distinto de cero cuando una prueba falla, por lo que CI falla limpiamente. Límite honesto: solo ejecuta colecciones en formato Postman, y la creación todavía ocurre en la GUI de Postman. Ejecuta pruebas; no te ayuda a escribirlas.

4. Postman CLI: la alternativa oficial a Newman

La CLI de Postman es el ejecutor de código cerrado propio de Postman. A diferencia de Newman, inicia sesión en tu cuenta de Postman y puede ejecutar una colección por su ID, directamente desde el espacio de trabajo, con los resultados reportándose a la nube de Postman.

postman login --with-api-key <YOUR_API_KEY>

postman collection run <collection_id> -e <environment_id>

Ideal para: equipos de Postman que desean ejecuciones vinculadas a la nube sin exportar archivos JSON. Límite honesto: es de código cerrado y está vinculado a una cuenta de Postman, y tener dos ejecutores oficiales crea una verdadera confusión sobre cuál adoptar. La comparación Postman CLI vs Newman aclara cuándo tiene sentido cada uno.

5. Bruno CLI: colecciones nativas de Git, ejecutadas con bru

Bruno almacena colecciones como archivos .bru de texto plano en carpetas ordinarias, por lo que las solicitudes viven en tu repositorio como cualquier otro código. Su CLI, @usebruno/cli, ejecuta esas colecciones desde la terminal con el comando bru, sin necesidad de una cuenta en la nube.

npm install -g @usebruno/cli

# Ejecuta cada solicitud en la carpeta de la colección actual
bru run --env staging

Ideal para: equipos que desean colecciones revisadas en pull requests y ejecutadas sin conexión, con aserciones y scripting manejados en los mismos archivos. Genera informes JSON, JUnit y HTML para CI. Límite honesto: la creación en texto plano se adapta más a los desarrolladores que a los equipos mixtos, y el ecosistema es más joven que el de Postman. Compara cómo se posiciona frente al ejecutor de Apidog en Bruno CLI vs Apidog CLI.

6. Schemathesis: tu esquema escribe las pruebas

Schemathesis toma una ruta diferente: lee tu esquema OpenAPI o GraphQL y genera miles de casos de prueba a partir de él, utilizando pruebas basadas en propiedades construidas sobre Hypothesis de Python. En lugar de escribir cada caso, le permites difuminar las entradas para encontrar errores 500, violaciones de esquema y respuestas que rompen el contrato que prometen tus documentos.

pip install schemathesis

schemathesis run https://api.example.com/openapi.json

Ideal para: detectar errores de casos límite que nadie pensó en probar, especialmente antes de un lanzamiento. Es uno de los argumentos más sólidos para mantener un esquema preciso. Límite honesto: necesita un esquema real para funcionar, y una API grande puede producir ruido que filtrarás con ganchos y opciones.

7. Step CI: un archivo YAML por flujo de múltiples pasos

Step CI describe un flujo de trabajo de API en un único archivo YAML: pasos, valores capturados y verificaciones. Cubre REST, GraphQL, gRPC, tRPC y SOAP en un solo flujo de trabajo y valida contra un esquema OpenAPI. El mismo archivo se ejecuta en una computadora portátil y en una pipeline.

npm install -g stepci

stepci run workflow.yml

Ideal para: secuencias de inicio de sesión y uso del token descritas declarativamente, sin scripting. Límite honesto: incluye un entorno de ejecución de Node, y la cadencia de lanzamiento se ha ralentizado, así que revisa la actividad reciente del repositorio antes de construir un pipeline sobre él.

8. curl: la base que ya está instalada

curl viene con macOS, la mayoría de las distribuciones de Linux y Windows actuales, por lo que la instalación más ligera es ninguna instalación. Es el cliente de referencia contra el cual se mide cualquier otra herramienta, y con -w y pegamento de shell puede actuar como un arnés de prueba mínimo.

# Publica JSON e imprime solo el estado HTTP
curl -s -o /dev/null -w "%{http_code}\n" \
  -X POST https://api.example.com/orders \
  -H "Content-Type: application/json" \
  -d '{"sku":"A-102","qty":2}'

Ideal para: solicitudes únicas, scripts y entornos bloqueados donde no se puede instalar nada nuevo. Límite honesto: las aserciones son completamente manuales (DIY). Diriges la salida a jq, comparas valores tú mismo y gestionas los códigos de salida a mano. Envía y muestra; no prueba. La guía de alternativas a curl para pruebas de API REST cubre qué usar cuando eso deja de ser suficiente.

9. HTTPie y xh: solicitudes legibles a mano

HTTPie hizo que las solicitudes de terminal fueran legibles: el comando es http, los campos JSON son pares clave=valor, y las respuestas regresan coloreadas y formateadas. xh reimplementa esa misma sintaxis en Rust como un único binario estático, con un inicio más rápido y una bandera --curl que imprime el comando curl equivalente.

http POST api.example.com/users name=acme plan=pro   # HTTPie
xh   POST api.example.com/users name=acme plan=pro   # misma sintaxis, un binario

Ideal para: explorar una API manualmente mientras construyes las pruebas reales en otro lugar. Límite honesto: ambos son clientes, no ejecutores. HTTPie incluye un entorno de ejecución de Python; xh sacrifica un conjunto de características más pequeño por la velocidad. Ninguno de los dos realiza aserciones sobre una respuesta.

10. k6: cuando la pregunta es la carga

k6 responde una pregunta diferente: no "¿es correcta esta respuesta?" sino "¿soporta el tráfico?". Es un único binario de Go de Grafana, programado en JavaScript, con umbrales que convierten una prueba de carga en una compuerta de éxito/fallo. Si se supera un umbral, k6 sale con un código distinto de cero, lo que CI interpreta como un fallo.

brew install k6

k6 run load.js   # vus, duración y umbrales definidos en el script

Ideal para: verificaciones de rendimiento que residen en el mismo repositorio que las pruebas funcionales y se ejecutan desde una computadora portátil o una pipeline. Límite honesto: es una herramienta de carga bajo AGPL-3.0, no un cliente de pruebas funcionales, y los escenarios significativos implican aprender su API de JavaScript.

¿Prefieres algo interactivo?

Si quieres una interfaz similar a Postman sin salir del shell, esa es una categoría aparte: los clientes TUI como atac y posting dibujan editores de solicitudes completos dentro de la terminal. Exploran APIs; no gestionan pipelines. El resumen de los mejores clientes API REST de terminal y TUI cubre ese aspecto en profundidad.

Tabla comparativa

Herramienta Tarea Aserciones integradas Instalación Código abierto
Apidog CLI Ejecutar escenarios creados visualmente en CI npm i -g apidog-cli No (capa gratuita)
Hurl Pruebas HTTP de texto plano brew install hurl Apache-2.0
Newman Colecciones de Postman sin interfaz gráfica npm i -g newman Apache-2.0
Postman CLI Ejecuciones de Postman vinculadas a la nube Instalador de Postman No
Bruno CLI Colecciones .bru nativas de Git npm i -g @usebruno/cli MIT
Schemathesis Fuzzing a partir de un esquema Generadas pip install schemathesis MIT
Step CI Flujos YAML de varios pasos npm i -g stepci MPL-2.0
curl Solicitudes brutas, scripting DIY preinstalado
HTTPie / xh Solicitudes manuales legibles No brew install httpie / xh
k6 Carga con umbrales de éxito/fallo Umbrales brew install k6 AGPL-3.0

Cómo elegir

Empieza por la tarea, no por la herramienta. Si ya existen pruebas en Postman, Newman o la CLI de Postman las ejecutarán mañana. Si quieres pruebas como texto revisable en tu repositorio, Hurl y Bruno CLI son las opciones más sólidas. Si tienes un esquema OpenAPI sólido, añade Schemathesis y deja que busque los errores que no predijiste. Mantén curl y xh para la capa manual, y utiliza k6 el día en que la pregunta pase de la corrección a la capacidad.

Elige la CLI de Apidog cuando prefieras crear escenarios en un editor visual y ejecutarlos en cualquier otro lugar. Es la única opción aquí donde el mismo proyecto también lleva tu diseño de API, datos simulados y documentación, que es lo que se explica en Apidog CLI: el cliente API que vive en tu terminal. Para una visión más amplia de las pruebas detrás de estas opciones, la guía de estrategias de pruebas de API mapea dónde encaja cada capa.

Preguntas frecuentes

¿Puedo probar APIs completamente desde la terminal? Sí. Crea las pruebas como archivos (Hurl, Bruno, Step CI) o en un editor visual (Apidog, Postman), luego ejecútalas sin interfaz gráfica con la CLI correspondiente. Cada ejecutor de esta lista devuelve un código de salida, que es todo lo que necesita CI.

¿Cuál es la diferencia entre un cliente API de terminal y una herramienta de prueba? Un cliente (curl, HTTPie, xh) envía una solicitud y muestra la respuesta. Una herramienta de prueba (Apidog CLI, Hurl, Newman) realiza aserciones sobre la respuesta y falla con un código de salida distinto de cero. Los clientes exploran; las herramientas de prueba actúan como compuerta.

¿Cuáles de estas se ejecutan en pipelines de CI? Todos los ejecutores: apidog run, hurl --test, newman run, postman collection run, bru run, schemathesis run, stepci run y k6 run, todos salen con un código distinto de cero en caso de fallo. Para un ejemplo de pipeline funcional, consulta cómo ejecutar pruebas de Apidog CLI en GitHub Actions.

¿Alguno de estos maneja pruebas de carga? k6 es el especialista en carga aquí, con umbrales como compuertas de éxito/fallo. Los demás verifican la corrección, no la capacidad, por lo que muchos equipos combinan un ejecutor funcional con k6.

¿Necesito una especificación OpenAPI para usar estas herramientas? Solo Schemathesis la requiere, ya que genera pruebas a partir del esquema. En los demás casos, una especificación ayuda en lugar de ser una restricción: Apidog importa OpenAPI 3.x, Swagger 2.0 y colecciones de Postman, y Step CI puede validar respuestas contra un esquema.

El patrón en las diez herramientas es el mismo: la creación busca comodidad, la ejecución busca un shell. Elige dónde quieres escribir las pruebas, luego asegúrate de que el ejecutor entregue a tu pipeline un código de salida. Si quieres ambas mitades desde una sola plataforma, descarga Apidog, construye un escenario en el editor y suelta su comando apidog run en CI para cerrar el ciclo.

Practica el diseño de API en Apidog

Descubre una forma más fácil de construir y usar APIs