OK, bueno, gracias a todos por venir a mi charla sobre Más allá de REST, pruebas de testing en la era de gRPC, Kafka y GraphQL. Mi nombre es Matt Fellowes. Soy Gerente de Producto Principal en SmartBear. Fui cofundador de Pactflow, que se unió a la familia SmartBear en abril de este año. Y soy un mantenedor principal de PACT, que es un marco de pruebas de contrato impulsado por el consumidor, uno de código abierto. Y el tema, o el curso, hasta gran parte de la charla de hoy.
Antes de trabajar en Pactflow, fui consultor. Soy un consultor en recuperación, y tuve la suerte de trabajar en algunas de las organizaciones más grandes y conocidas de Australia y sus sistemas distribuidos, y realmente los vi evolucionar a lo largo de mi career. Ha habido, por supuesto, una gran cantidad de cambios tecnológicos desde los días en que SOAP, que era la tecnología predominante cuando me uní a la industria, hasta los años. Y en mi career relativamente corta, he trabajado desde ese punto de partida de SOA, SOAP hasta REST y microservicios, el auge de la nube pública y el IOT, el event sourcing, la estructura de eventos, las canalizaciones de datos modernas y, por supuesto, las arquitecturas sin servidor. Y descubrí que en muchas de estas situaciones y contextos, las pruebas de contrato eran aún muy relevantes y a menudo buscaba introducir pruebas de contrato en lugares donde había beneficios en el desplazamiento hacia la izquierda, avanzar más rápido y resolver esos problemas en sí mismos. Pero, por supuesto, durante esas implementaciones o a menudo, yo sería el destinatario de algún comentario sarcástico, generalmente de otra consultoría competidora, que tenía el siguiente argumento en forma de shape. Si simplemente usáramos la tecnología en blanco, entonces no necesitaríamos pruebas de contrato. Pero ¿es cierto? Bueno, hoy vamos a examinar esa afirmación. Vamos a hacer la pregunta ¿REST es realmente el problema? ¿Y podríamos ahorrarnos la molestia de tener que pensar en las pruebas de contrato, ejecutar pruebas utilizando una tecnología superior para la comunicación de API? Vamos a aprender brevemente qué son las pruebas de contrato, por qué existen y el problema que resuelven. Y vamos a ver, ya sabes, si la historia se repite o si estas nuevas tecnologías y tendencias arquitectónicas realmente resuelven el problema. Específicamente, vamos a ver algunas clases de tecnologías. Vamos a ver especificaciones como OAS y ASIN KPI hasta cierto punto, GraphQL y también IDL y cosas como Protobufs y Avroans, Rift. Por supuesto, hay otros, pero estos son, con mucho, las alternativas más comunes que me sugieren mis interlocutores consultores. Los veremos desde una perspectiva general de pruebas de contrato, pero por supuesto utilizaremos PACT, que obviamente es una herramienta en la que trabajo, como una implementación concreta para ayudarnos a comprender y cómo funciona en la práctica. Y espero que veas que, ya sabes, si bien PACT ha evolucionado para satisfacer algunas de estas necesidades, también veremos que el problema y la solución son mucho más generales que cualquier tecnología o lenguaje específico que hayamos discutido hoy.
Permítanos hablar rápidamente o comprender por qué existen las pruebas de contrato y el contexto en el que operan. Creo que comenzar con una cita de un cliente es una buena manera de ambientar la escena, solo para ayudarnos, ya sabes, a sentir el problema. Esta es una cita de un prospecto de PACT flow que busca ayuda y, por el bien del argumento y para proteger al inocente, llamémoslo Bill. Y Bill es líder de una organización de pruebas para más de 40 equipos en una institución bancaria muy grande. Y aquí puedes ver que básicamente describe cómo trabaja en este entorno grande con un entorno de pruebas altamente volátil, lo que lo hace desafiante, y está tratando de descubrir cómo puede usar pruebas de contrato para probar todas las cosas que tiene. Tiene servicios RESTful, GraphQL, Kafka, sistemas de terceros, todas estas cosas, ¿verdad? Lo que puedes deducir de esto es que trabaja en este entorno caótico, es complejo y está buscando formas de llevar algo de proceso y control a esa situación. Ahora, si suena algo parecido a su empresa o arquitectura, no está solo. La investigación del estado de calidad de SmartBear, así como el informe de API de Postman, realmente respaldan esto. Y podemos ver que, en primer lugar, los microservicios internos se están convirtiendo en un enfoque masivo para los equipos.
Comments