Mientras desarrollas tu webhook, puedes probarlo con Business Cargas útiles de mensajes. En lugar de crear pruebas manualmente, puedes usar la API de Business Framework de prueba de Mensajes para probar tu webhook con varios tipos de cargas útiles de JSON que puede recibir tu webhook en producción.
Para comenzar, solo necesitas una URL para una instancia de tu webhook en ejecución. El framework de prueba es fácil de instalar y puedes probar tu webhook con un solo comando.
Cómo comenzar
Instala el framework
La forma más fácil de instalar el framework es con el administrador de paquetes de NPM.
El framework se publica en el registro de paquetes de NPM, por lo que puedes instalarlo
con npm
:
npm install -g bm-test-framework
Ejecuta las pruebas
Con el paquete instalado, puedes proporcionar la URL de tu webhook como un entorno variable y ejecutar todas las pruebas con el siguiente comando:
BMTF_ENDPOINT_URL=<Your webhook URL> bm-test-framework
Los resultados del framework de prueba se ven de la siguiente manera:
Sending payloads to <Your webhook URL>
✔ authentication-request.json should return 200
✔ event-receive.json should return 200
✔ image-message.json should return 200 (862ms)
✔ read-receipt.json should return 200
✔ suggestion-message.json should return 200
✔ text-message.json should return 200 (134ms)
✔ text-with-dialogflow-response.json should return 200 (128ms)
✔ user-receipt.json should return 200
En esta ejecución de prueba de ejemplo, se aprobaron todos los casos de prueba.
Si tu webhook falla en uno de los casos de prueba, significa que no
respondes con un 200 OK
a la carga útil de JSON de ese caso de prueba. En ese caso, la herramienta de prueba
el framework imprime la información del error para ayudarte a depurar. Consulta la
framework de prueba README
para obtener más información sobre casos de prueba específicos.
Usa el framework en tu proyecto de Node.js
Para usar el framework desde tu propio código en un proyecto NodeJS o desde en un paquete de pruebas de Mocha, primero instala el paquete como un dependencia:
npm install --save-dev bm-test-framework
Una vez instalado, puedes crear un objeto BmTestFramework
para administrar las pruebas:
const BmTestFramework = require('bm-test-framework');
const bmTestFramework = new BmTestFramework({endpointURL: <Your webhook URL>});
El array de miembros payloads
contiene todos los casos de prueba. Puedes usar la
sendPayload
para ejecutar una prueba específica. Por ejemplo, el siguiente código
ejecuta la primera prueba en el framework:
bmTestFramework.sendPayload(bmTestFramework.payloads[0])
Cómo configurar las pruebas
Además de la variable de entorno BMTF_ENDPOINT_URL
requerida, puedes
establece también variables de entorno opcionales para personalizar el comportamiento de las pruebas:
Variable de entorno | Nombre del campo de configuración | Tipo | Descripción |
---|---|---|---|
BMTF_RANDOM_UUID | randomUuid | boolean | Si es verdadero, establece el ID de la conversación en un UUID aleatorio con un formato válido. Si es falso, establece todos los ID de conversación en "CONVERSATION-ID". |
BMTF_TIMEOUT | tiempo de espera agotado | String de hora con formato o número | Establece el tiempo de espera en milisegundos para cada caso de prueba. El tiempo de espera predeterminado es de 2,000 ms para cada caso de prueba. Consulta la referencia de la API de Mocha para obtener especificaciones detalladas sobre el tipo y el formato. |
Por ejemplo, el siguiente código ejecuta el framework de prueba desde la línea de comandos con la opción aleatoria de UUID habilitada y con un tiempo de espera de 1,000 ms:
BMTF_ENDPOINT_URL=<Your webhook URL> BMTF_TIMEOUT=1000 BMTF_RANDOM_UUID=true bm-test-framework
Para personalizar el comportamiento de prueba en tu proyecto de Node.js, también puedes pasar el
las mismas variables en el objeto config
cuando creas tu BmTestFramework
:
const bmTestFramework = new BmTestFramework({endpointURL: <Your webhook URL>, randomUuid: true, timeout: 1000});