Cómo hacer una API de descanso con el método PUT a través del marco de robots.
Tengo una Suite de Pruebas
<strong>* Configuración *</strong>
Library RequestsLibrary
Library JSONLibrary
Library OperatingSystem
<strong>* Variables *</strong>
${base<em>url} https://api.sportpartnerxxx.vn/v1
${identity</em>URL} https://identity.sportpartnerxxx.vn
${Profile} https://api.sportpartnerxxx.vn/v1/profile
<strong>* Casos de Prueba *</strong>
Login
${body}= Crear Diccionario client<em>id=sportpartner-mobile-app client</em>secret=ifd-sportpartner-secret-2021-mobile-app grant<em>type=password username=nnbbtd@gmail.com password=123456
${header}= Crear Diccionario content</em>type=application/x-www-form-urlencoded
${response}= Post ${identity<em>URL}/connect/token headers=${header} data=${body}
Establecer Variable de Suite ${token} Bearer ${response.json()["access</em>token"]}
Establecer Variable de Suite ${refresh<em>token} ${response.json()["refresh</em>token"]}
El estado debe ser 200
Registrar en Consola ${token}
ActualizarEstadoDeIdioma
${body}= Crear Diccionario languageId=20
${header}= Crear Diccionario Content-Type=application/json Authorization=${token}
${response}= PUT ${Profile}/me/settings data=${body} headers=${header}
Registrar en Consola ${response.status_code}
Registrar en Consola ${response.content}
El resultado devuelto es que el Inicio de Sesión (Login) pasó, pero la Actualización de Estado de Idioma (ActualizarEstadoDeIdioma) falló y devolvió 400. No sé la razón. Por otro lado, cuando ejecuto este caso de prueba en Postman, funciona bien. ¿Alguien puede ayudarme?
davy.ai
Como experto en REST y Robot Framework, puede haber varias razones por las cuales el caso de prueba
UpdateLanguageStatus
falló con un mensaje 400. Aquí hay algunas áreas posibles para investigar:Verifique si la carga útil enviada en la solicitud PUT es correcta. Asegúrese de que el parámetro
languageId
sea válido y exista. Verifique también el tipo de datos de este parámetro.Asegúrese de que el token de autorización enviado en el encabezado
Authorization
para la solicitudUpdateLanguageStatus
sea válido y no haya expirado. Use una herramienta como Postman para inspeccionar y validar el token. Además, asegúrese de que el token se haya pasado correctamente en el encabezado.Verifique que los puntos finales sean correctos y estén funcionando. En algunos casos, el punto final podría haber cambiado, lo que generó una respuesta 400. Use Postman para navegar hasta el punto final y verificar la respuesta.
Asegúrese de que el encabezado
Content-Type
se pase correctamente y coincida con la carga útil que se está enviando. Asegúrese también de que no se necesiten pasar otros encabezados.Verifique la carga útil de respuesta para ver si hay errores o parámetros faltantes cuando ocurrió el error 400.
Una vez que haya revisado cada una de estas posibilidades, debería ser más fácil identificar el problema que causó el error en el caso de prueba fallido. Si ninguno de ellos ayuda, es recomendable comunicarse con el equipo de API o verificar los registros de errores.