Prueba Realista con Axios, Sinon, Chai y Mocha
Explicació del Codi JavaScript amb Axios, Sinon, Chai i Mocha
- S'incorpora la biblioteca Axios:
- S'importa Axios des d'un CDN amb l'enllaç
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
. Axios és una biblioteca JavaScript que s'utilitza per fer peticions HTTP.
- S'incorporen les biblioteques Mocha.js, Chai.js i Sinon.js:
- S'importen les biblioteques Mocha.js, Chai.js i Sinon.js des de CDNs. Mocha és un marc de proves JavaScript, Chai és una biblioteca d'assegurances, i Sinon és una biblioteca per a simulacions i espionatge en JavaScript.
- Es structure la pàgina HTML:
- Es crea un títol (
<h1>
) per a la prova: "Prova Realista amb Axios, Sinon, Chai i Mocha".
- Es crea un div amb l'identificador "mocha" per mostrar els resultats de les proves.
- Es crea un altre div amb l'identificador "resultats" per mostrar els resultats de les proves.
- Dins del div "resultats", s'afegeixen dos paràgrafs (
<p>
) amb els identificadors "respostaExitosa" i "respostaFallida" per mostrar els resultats exitosos i fallits de les proves.
- Configuració de Mocha:
- S'afegeix un bloc de script per configurar Mocha mitjançant la crida a
mocha.setup('bdd');
. Aquesta línia estableix la configuració de les proves com a "bdd" (Behavior-Driven Development).
- Funció
fetchData
per realitzar una sol·licitud HTTP amb Axios:
- S'afegeix una funció
fetchData
que utilitza Axios per fer una sol·licitud HTTP a l'API https://jsonplaceholder.typicode.com/posts/1
. Si la sol·licitud és exitosa, retorna les dades; si hi ha un error, llança l'error.
- Script de prova amb Chai.js i Sinon.js:
- S'afegeixen proves utilitzant Mocha, Chai i Sinon. Es defineixen dues proves:
- La primera prova verifica com es gestiona una sol·licitud HTTP exitosa. S'utilitza Sinon per simular una resposta exitosa d'Axios. Després, es crida la funció
fetchData
i es mostra la resposta exitosa a la pàgina.
- La segona prova verifica com es gestiona una sol·licitud HTTP fallida. S'utilitza Sinon per simular una resposta d'error d'Axios. Es crida la funció
fetchData
i es captura l'error que es mostra a la pàgina.
Aquest codi és un exemple de com realitzar i mostrar proves d'unitats en una pàgina web utilitzant Mocha, Chai, Sinon i Axios, amb la capacitat de simular respostes d'Axios per validar el comportament del codi en respostes exitoses i fallides.