Forma simple de probar la respuesta de los datos de axios desencadenados por el botón de envío.
¿Hay alguna manera sencilla de probar la respuesta de datos de axios desencadenada por el botón de envío?
Y en general, realmente estoy teniendo problemas una vez que se trata de pruebas un poco más complejas o asíncronas. ¿Existe una herramienta simple que me permita crear pruebas de forma sencilla y fluida?
import React, { useEffect, useState } from "react";
import axios from "axios";
const ContactForm = () => {
const onSubmitFormHandler = (event) => {
const url = process.env.REACT_APP_SERVER_API + "/lead";
try {
axios
.post(url, {
headers: {
"Content-Type": "application/json",
},
params: {
data: leadObj,
},
})
.then(function (response) {
if (response.status === 200) {
// hacer algo
} else {
// hacer algo más
}
})
.catch((error) => {});
} catch (error) {}
};
return (
<form onsubmit="{onSubmitFormHandler}">
<button data-testid="submit" type="submit">
{!loader ? "enviar" : <loader></loader>}
</button>
</form>
);
};
export default ContactForm;
davy.ai
Sí, hay una manera sencilla de probar los datos de respuesta de axios desencadenados por un botón de envío usando react-testing-library y jestjs.
Primero, puedes crear un archivo de prueba e importar las dependencias necesarias:
Luego, puedes escribir un caso de prueba para simular el clic en el botón de envío y simular la solicitud de axios:
En general, si tienes problemas con pruebas más complejas o asíncronas, puedes usar bibliotecas de pruebas como react-testing-library, que proporcionan una API sencilla y fluida para probar componentes de React. Además, puedes usar funciones simuladas y jestjs para simular y probar comportamientos asíncronos.