es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo estructurar pruebas automatizadas para la integración de API de código abierto que requiere claves/secretos del cliente?

Estoy trabajando en un proyecto de código abierto que proporciona soporte de biblioteca para solicitudes y protocolos OAuth2. Este proyecto incluye ejemplos sobre cómo implementar la biblioteca con una variedad de proveedores de API (Google, LinkedIn, Instagram, etc.)

Actualmente, estos ejemplos existen como archivos de texto independientes que tienen declaraciones de variables para la identificación del cliente y la clave/contraseña:

client_id = 'getThisFromOwnerOfApi'
client_secret = 'getThisFromOwnerOfApi'
...
# construir solicitud, enviar, leer respuesta, etc.

Estos se hacen de manera que el usuario actualice el archivo manualmente con su identificación/contraseña del cliente. Luego ejecuta el archivo localmente para ver cómo se puede usar la biblioteca.

Me gustaría reestructurar los ejemplos para que sean más funcionales, mantenibles y fáciles de usar. Cada ejemplo vendría con:

  • un archivo de ejecución
  • un archivo de prueba
  • un archivo de configuración (?)
  • un documento de lectura.

En última instancia, me gustaría que los ejemplos vivieran en su propio directorio y que el pipeline del proyecto ejecutara tareas automatizadas en cada ejemplo (como el archivo de prueba) para asegurarse de que los ejemplos estén funcionando y actualizados.

Mi pregunta es, ¿cómo podría abordar el manejo de las claves de API para ejecutar las pruebas automatizadas?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Una opción podría ser utilizar variables de entorno para almacenar las claves de API en lugar de codificarlas directamente en los archivos de ejemplo. El archivo de ejecución podría entonces leer las variables de entorno y pasarlas como argumentos a la biblioteca. De esta manera, las claves de API no están expuestas en el código y se pueden actualizar fácilmente sin tener que modificar los archivos de ejemplo. El archivo de configuración también podría incluir instrucciones sobre cómo configurar las variables de entorno para diferentes proveedores de API. Durante el proceso de línea de ensamblaje, el servidor de compilación también podría configurar las variables de entorno necesarias para que las pruebas se ejecuten correctamente.

Comments are closed.