No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Implementando pruebas en el footer

14/23
Recursos

Aportes 12

Preguntas 0

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

no funciona:

 FAIL  src/frontend/__test__/components/Footer.test.js
  鈼 Test suite failed to run

    It looks like you called `mount()` without a global document being loaded.

      4 |
      5 | describe('<Footer />', () => {
    > 6 |   const footer = mount(<Footer />);
        |                  ^
      7 |
      8 |   test('Render Footer Component', () => {
      9 |     expect(footer.length).toEqual(1);

      at new ReactWrapper (node_modules/enzyme/src/ReactWrapper.js:103:13)
      at mount (node_modules/enzyme/src/mount.js:10:10)
      at src/frontend/__test__/components/Footer.test.js:6:18
      at Object.<anonymous> (src/frontend/__test__/components/Footer.test.js:5:1)

Test Suites: 1 failed, 1 total

En mi caso cuando cre茅 el componente <Footer /> las anclas las declar茅 como <Link>'s de React Router.
.
Al correr la prueba como se muestra en la clase me tira un error indicando que no deber铆a usar un <Link> fuera de un <Router>, lo cual me hace sentido ya que solo est谩 montando el componente sin el resto de la App.
.
Solucione esto cambiando loas <Link> por <a> en mi componente <Footer /> pero 驴C贸mo ser铆a la manera correcta de crear mi prueba?
.

.

Me sale este error, alguien sabe que significa? Si renderiza y siempre me marca error en el import de la primera imagen, no importa si cambio el orden
![](

Para los que tengan problemas con los elementos anchor 鈥榓鈥, deben usar la version 17 de enzyme adapter y la configuracion de la suite debe ser asi:

import React from 'react';
import { mount } from 'enzyme';
import Footer from '../../components/Footer';

describe('<Footer>', () => {
  const footer = mount(<Footer />);

  test('Render Footer Component', () => {
    expect(footer.length).toEqual(1);
  });

  test('Footer haves 3 anchors', () => {
    expect(footer.find('a')).toHaveLength(3);
  });
});

No se nada de pruebas, pero me surge la siguiente duda: 驴Para que probar lo que se sabe que esta escrito en el Componente?, cual es el prop贸sito final de hacer pruebas.

tengo el siguiente error:

[email protected]Pro-de-Carlos /Applications/XAMPP/xamppfiles/htdocs/platzi master/integracion-backend-y-frontend/curso-backend-for-frontend                                                                 master
鈿 npm run test               

> [email protected] test /Applications/XAMPP/xamppfiles/htdocs/platzi master/integracion-backend-y-frontend/curso-backend-for-frontend
> jest

 FAIL  src/frontend/__test__/components/Footer.test.js
  <Footer />
    鉁 encountered a declaration exception (46ms)

  鈼 <Footer /> 鈥 encountered a declaration exception


          Enzyme Internal Error: Enzyme expects an adapter to be configured, but found none.
          To configure an adapter, you should call `Enzyme.configure({ adapter: new Adapter() })`
          before using any of Enzyme's top level APIs, where `Adapter` is the adapter
          corresponding to the library currently being tested. For example:

          import Adapter from 'enzyme-adapter-react-15';

          To find out more about this, see https://airbnb.io/enzyme/docs/installation/index.html

      4 | 
      5 | describe("<Footer />", () => {
    > 6 |   const footer = mount(<Footer />);
        |                  ^
      7 | 
      8 |   test("Render Footer Component", () => {
      9 |     expect(footer.length).toEqual(1);

          
      at validateAdapter (node_modules/enzyme/src/validateAdapter.js:5:11)
      at getAdapter (node_modules/enzyme/src/getAdapter.js:10:3)
      at new ReactWrapper (node_modules/enzyme/src/ReactWrapper.js:108:23)
      at mount (node_modules/enzyme/src/mount.js:10:10)
      at Suite.<anonymous> (src/frontend/__test__/components/Footer.test.js:6:18)
      at Object.<anonymous> (src/frontend/__test__/components/Footer.test.js:5:1)

Test Suites: 1 failed, 1 total
Tests:       1 failed, 1 total
Snapshots:   0 total
Time:        2.886s
Ran all test suites.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] test: `jest`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] test script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/carlosramirez/.npm/_logs/2020-06-15T04_27_09_920Z-debug.log

Alguien que me pueda ayudar!

隆Ahora si entiendo esto de los test, genial! Oscar es un excelente profesor. Mi respeto al 100% 馃槃

Alguien sabe como o por que este error.

Encontr茅 edte plugin y aparte que autocompleta ejecuta los test de una vez

que buen tutor 鉂わ笍

驴Vale la pena colocar el script de 鈥渘pm run test鈥 si lo que ejecuta es simplemente 鈥渏est鈥?

Creo que en esta ocasi贸n puede ser m谩s pr谩ctico no designar un script para esto.
驴Qu茅 opinan?