JetClient es un complemento de cliente API simple y potente para IDE de JetBrains (IntelliJ IDEA, GoLand, PyCharm, PhpStorm, etc.). Combina las mejores características de los clientes API existentes con mejoras adicionales, todo dentro de su IDE. Las características clave incluyen:
File Sync (Git Sync) : almacena solicitudes y carpetas en un formato legible por humanos en su sistema de archivos, lo que permite compartir y colaborar fácilmente con su equipo a través de Git.
Grupos de entornos : cree grupos de entornos para seleccionar varios entornos a la vez. Por ejemplo, un grupo para (dev, test, prod) y otro para (user, admin).
Cómoda gestión de variables : las variables se definen en formato JSON5 y se organizan en dos editores: compartido (sincronizado) y local (no sincronizado). Las variables pueden incluir no sólo tipos primitivos sino también objetos y matrices.
Potentes secuencias de comandos : escriba secuencias de comandos previas a solicitudes y de prueba para solicitudes y carpetas. Además, cree scripts de conjuntos de pruebas que puedan reutilizar solicitudes existentes, eliminando la necesidad de duplicarlas.
Integración con código fuente y OpenAPI : importe API directamente desde su código fuente y navegue sin esfuerzo entre las solicitudes y el código correspondiente, y viceversa.
Compatibilidad con GraphQL : se integra perfectamente con el complemento GraphQL de JetBrains para resaltar la sintaxis y completar el código.
Mire el vídeo del complemento JetClient para conocer las funciones del complemento.
Proyecto
Sincronización de archivos (Git Sync)
Ambientes
variables
Guiones
Galletas
Apoderado
http/2
Importar
Contribución
Privacidad
Un proyecto es una colección raíz que consta de carpetas y solicitudes. Incluye sus propios ajustes, entornos, variables y un script de inicio. Los proyectos en JetClient son independientes del proyecto IDE; puede tener varios proyectos JetClient dentro de un solo proyecto IDE.
File Sync (Git Sync) permite guardar y restaurar sus colecciones de solicitudes en el sistema de archivos local. Esto permite compartir fácilmente colecciones con su equipo a través de Git o cualquier otro sistema de control de versiones (VCS).
Habilitar sincronización: active la sincronización al crear un nuevo proyecto JetClient o en la configuración del proyecto.
Establecer ruta de sincronización: especifique la ruta del directorio donde se almacenarán los archivos de sincronización.
Guardar o restaurar: haga clic derecho en la raíz del proyecto o en una solicitud/carpeta específica y elija Save All
o Save
para guardar. Para restaurar o ver diferencias, seleccione las opciones correspondientes en el mismo menú contextual.
Para excluir una carpeta específica de la sincronización, desactive la sincronización en sus propiedades. Este cambio también se aplicará a todas las carpetas anidadas.
Los entornos permiten el uso de diferentes conjuntos de variables para diversos contextos. Estos están organizados en Grupos de entornos y puede seleccionar varios entornos simultáneamente, uno de cada grupo.
Siempre hay disponible un grupo de entorno Default
, que normalmente incluye entornos como Local
, Staging
y Production
. También puede crear sus propios grupos de entorno, como User
, Client
, Region
, API Version
y otros.
Los entornos se definen por proyecto y se pueden crear en la pestaña Environments
. Las variables para estos entornos se configuran en la pestaña Variables
.
Las variables en JetClient se pueden definir en diferentes niveles: proyecto, carpeta y tiempo de ejecución.
Variables de tiempo de ejecución: definidas en scripts y solo disponibles durante la ejecución del script.
Variables de Proyecto y Carpeta: Definidas en la pestaña Variables
del proyecto o carpeta, usando el formato JSON5.
El editor de variables se divide en dos secciones: Compartida y Local .
Las variables compartidas se guardan en el archivo de sincronización del proyecto/carpeta y se pueden compartir con su equipo.
Las variables locales se almacenan de forma segura en su sistema y no se incluyen en el archivo de sincronización.
Las variables del proyecto incluyen variables globals
y específicas del entorno, a las que se puede acceder independientemente del entorno seleccionado. Están organizados dentro de un objeto JSON con el entorno como propiedad de nivel superior:
{ globales: {baseUrl: 'https://api.example.com' }, local: {token: 'localToken' }, desarrollador: {token: 'devToken' }}
Las variables de carpeta pueden incluir tanto variables generales como variables específicas del entorno. Se puede acceder a las variables generales independientemente del entorno seleccionado, mientras que las variables específicas del entorno solo están disponibles cuando se selecciona el entorno correspondiente:
{ miVarCarpeta: 'miValor', desarrollador: {myFolderVar: 'devValue' }}
Las variables en JetClient pueden ser tipos, objetos y matrices primitivos, y se pueden utilizar en scripts, solicitudes y carpetas. Para utilizar una variable en cualquier campo, enciérrela entre llaves dobles: {{myVar}}
. Puede hacer referencia a objetos o matrices completos, por ejemplo, en el cuerpo de una solicitud, utilizando {{myRequestBody}}
.
Las variables también pueden hacer referencia a otras variables, como se muestra en el siguiente ejemplo:
{ matriz: [{ miPropiedad: 123} ], // Esta variable se resuelve en la cadena "123" miVar: '{{matriz[0].miPropiedad}}', // Esta variable se resuelve en el número 123 miVar2: {{matriz[0].miPropiedad}}}
Las variables se resuelven en el siguiente orden, de mayor a menor prioridad:
Variables de tiempo de ejecución
Variables de carpeta local específicas del entorno
Variables de carpeta compartida específicas del entorno
Variables de carpeta local
Variables de carpeta compartida
Variables de todas las carpetas principales
Variables de entorno
Globales
Las solicitudes y carpetas en JetClient pueden tener scripts de solicitud previa y de prueba escritos en JavaScript, mientras que los conjuntos de pruebas contienen solo scripts de prueba . El proyecto incluye un script de inicio ejecutado una vez por ejecución, que se puede utilizar para definir funciones y variables globales. Por ejemplo:
CryptoJS = require("crypto-js");hmacSHA256 = (mensaje) => {return CryptoJS.HmacSHA256(message, jc.environment.get('secret')).toString();}
Luego puede usar CryptoJS
y hmacSHA256
en sus scripts de solicitud previa y prueba.
Los scripts se ejecutan en el siguiente orden cuando envía una solicitud o ejecuta una carpeta con el ejecutor:
Script de inicio del proyecto (ejecutado una vez por ejecución)
Scripts de solicitud previa de todas las carpetas principales (desde la raíz hasta la carpeta actual)
Guión previo a la solicitud de la solicitud
Scripts de prueba de todas las carpetas principales (desde la raíz hasta la carpeta actual)
Guión de prueba de la solicitud
Los pasos 2 a 5 se repiten para cada solicitud de la ejecución.
Para los conjuntos de pruebas, los scripts se ejecutan en este orden:
Guión de inicio del proyecto.
Script de prueba del conjunto de pruebas
Los scripts de jc.runRequest
, jc.runFolder
o jc.runTestSuite
siguen el mismo orden de ejecución que las solicitudes, carpetas y conjuntos de pruebas.
La biblioteca integrada JetClient es similar a la de Postman, pero en lugar de pm
se llama jc
. Por ejemplo,
jc.test("El código de estado es 200", () => {jc.expect(jc.response.code).to.eql(200)})
Los scripts de JetClient pueden utilizar el BDD de Chai Assertion Library. Para obtener más detalles, consulte la documentación de la biblioteca JetClient. Consulte también Tipos de biblioteca JetClient para obtener definiciones de tipos.
JetClient incluye bibliotecas integradas como ajv
, atob
, btoa
, chai
, cheerio
, crypto-js
, csv-parse/lib/sync
, lodash
, moment
, tv4
, uuid
y xml2js
, que puede importar utilizando la función require
. Además, puede agregar sus propias bibliotecas a los scripts. Navegue a Settings > Tools > JetClient
y configure el Libraries directory
. Si está utilizando bibliotecas npm, especifique el directorio que contiene su package.json
y node_modules
. De lo contrario, utilice el directorio donde se encuentran sus bibliotecas de scripts. Luego puede usar require para importar sus bibliotecas.
Gestionar las cookies mediante el Cookies Manager
. Para abrirlo, haga clic en Cookies Manager
en la barra de herramientas de la ventana de herramientas.
Los servidores proxy se admiten mediante la configuración de proxy IDE.
Para enviar una solicitud utilizando el protocolo HTTP/2
, seleccione la opción HTTP/2
en Settings > Tools > JetClient > HTTP Version
.
JetClient admite la importación de colecciones de varias fuentes:
Proyecto JetClient
Primavera
JAX-RS
Retroadaptación
OpenAPI (arrogancia)
rizo
Cartero
Para importar una solicitud cURL, simplemente copie el comando cURL y péguelo en el campo URL de una solicitud.
Si desea mejorar la documentación, envíe un PR.
Sugerencias para mejorar aún más el producto.
Solo sin conexión: JetClient es un complemento solo sin conexión y no recopila ningún dato.
Almacenamiento seguro: las variables locales, las cookies y los tokens OAuth2 se almacenan de forma segura en su sistema. Esto incluye el uso de KeePass en Windows, Keychain en macOS y libsecret en Linux.
Sin sincronización en la nube: no hay sincronización de backend ni en la nube. Los datos confidenciales se almacenan de forma segura en su sistema. Otros datos se guardan en el directorio .idea/JetClient
de su proyecto y en los archivos de sincronización JetClient si la sincronización está habilitada.