En este documento, se describen las plantillas y el código de muestra disponibles para ayudarte a crear monitores sintéticos. Las funciones de ejemplo están disponibles en el repositorio de GitHub Google Cloud/synthetics-sdk-nodjs
.
Si escribes pruebas y no dependes de una plantilla, asegúrate de que la prueba se apruebe, a menos que se arroje una Error
. Te recomendamos que uses la biblioteca Assert
para asegurarte de que, cuando se produzcan fallas, se atribuyan a la línea de código correcta.
Plantillas genéricas
Las plantillas genéricas están configuradas para recopilar datos de seguimiento y registro de las solicitudes HTTP salientes. La solución aprovecha el módulo auto-instrumentation-node de OpenTelemetry y winston logger. Debido a la dependencia de los productos de código abierto, es posible que haya cambios en la estructura de los datos de registro y seguimiento. Por lo tanto, los datos de seguimiento y de registro recopilados deben usarse solo con fines de depuración.
Puedes implementar tu propio enfoque para recopilar datos de registro y seguimiento de las solicitudes HTTP salientes. Para ver un ejemplo de un enfoque personalizado, consulta la clase SyntheticAutoInstrumentation
.
Muestra genérica de Node.js
En el ejemplo de generic-synthetic-nodejs
, se muestra cómo consultar una URL. Esta muestra contiene lo mismo que la función predeterminada
que muestra la consola de Google Cloud. Para ver la muestra completa, haz clic en more_vert Más
y, luego, selecciona Ver en GitHub.
Muestra de TypeScript
En el ejemplo de generic-synthetic-typescript
, se muestra cómo consultar una URL. Para ver la muestra completa, haz clic en more_vert Más
y, luego, selecciona Ver en GitHub.
Plantilla de Puppeteer
Si usas Puppeteer, considera comenzar con la muestra de generic-puppeteer-nodejs
.
Configuración obligatoria de Puppeteer
Para usar Puppeteer, asegúrate de completar los siguientes pasos:
Incluye
.puppeteerrc.cjs
en el directorio del código fuente de la Cloud Function:Agrega la siguiente secuencia de comandos al archivo
package.json
de tu Cloud Function:"scripts": { "gcp-build": "node node_modules/puppeteer/install.mjs" },
Muestra de Puppeteer
En la muestra de generic-puppeteer-nodejs
, se ilustra cómo usar Puppeteer con tu Cloud Function. Para ver la muestra completa, haz clic en more_vert Más
y, luego, selecciona Ver en GitHub.
Plantilla de Selenium WebDriver
Si usas Selenium WebDriver, considera comenzar con la muestra de generic-selenium-nodejs
. La muestra, que está disponible en GitHub, incluye los archivos index.js
y package.json
.
Para ver la muestra completa, haz clic en more_vert Más y, luego, selecciona Ver en GitHub.
Plantilla de moca
Si escribes pruebas que dependen de la plantilla Mocha, considera si una secuencia de pruebas debe continuar o detenerse cuando se produce una falla. Para detener una secuencia de pruebas después de una falla, debes configurar la marca bail
.
Si quieres ver un ejemplo de extremo a extremo que incluye la implementación de una API, un conjunto de pruebas de Mocha de muestra para los extremos de la API y cómo configurar el monitor sintético, consulta el blog Instructivo sobre supervisión sintética de Google Cloud.
En la muestra de mocha-url-ok
, se ilustra cómo una Cloud Function puede invocar un paquete de pruebas Mocha y se proporciona un paquete de pruebas de muestra.
Para ver la muestra completa, haz clic en more_vert Más
y, luego, selecciona Ver en GitHub.
Plantilla de vínculo roto
En el ejemplo de broken-links-ok
, se ilustra cómo configurar un verificador de vínculos rotos.
Para esta plantilla, solo debes especificar los valores del objeto options
. Este objeto especifica el URI que se probará y los parámetros de la prueba.
Si usas Puppeteer, asegúrate de completar los pasos de la configuración obligatoria.
Para ver la muestra completa, haz clic en more_vert Más y, luego, selecciona Ver en GitHub.
¿Qué sigue?
- Crea un monitor sintético
- Cómo crear un verificador de vínculos rotos
- Cómo administrar monitores sintéticos
- Explora los resultados del monitor sintético