Estoy ejecutando algunas pruebas de integración en un microservicio que construí en AWS. Una de las pruebas consiste en afirmar que el servicio desencadena un evento de AWS EventBridge, ya que los servicios posteriores deberán suscribirse a este evento.
Mi pregunta es, ¿cómo pruebo esto en el contexto de mi microservicio?
Solo necesito afirmar que el evento se disparó en AWS. Esperaba que elSDK de AWS permitiera alguna forma de afirmar esto, por ejemplo, poder suscribirse a un evento en alguna operación de tipo de sondeo largo, pero no he podido encontrar nada.
NOTA: No busque respuestas de doble espía de prueba, por favor. El nivel de prueba que estoy haciendo requiere confirmar que se ha activado un evento real en AWS EventBridge
Puede crear una regla para su evento específico y apuntar a un SQS.
Luego puede leer desde el SQS (mediante un sondeo largo) y afirmar que el evento se ha activado.
Puede consultar las métricas de CloudWatch para su regla, como TriggeredRules , Invocations y FailedInvocations para la depuración. Consulte el registro y la monitorización en Amazon EventBridge aquí
Si la regla se activa por un evento de un servicio de AWS, también puede usar la acción TestEventPattern para probar el patrón de eventos de nuestra regla con un evento de prueba para asegurarse de que el patrón de eventos de su regla esté configurado correctamente. Para obtener más información sobre cómo usar TestEventPattern, consulte la documentación de TestEventPattern