Утешение shallow () приводит к ShallowWrapper {}

#reactjs #jestjs #enzyme

#reactjs #jestjs #фермент

Вопрос:

это мой collegeName.test.js

 import React from 'react';
import Enzyme, { shallow, mount } from 'enzyme';
import PersonalProfile from '../../../components/Profile/Tabs/Personal';
import Adapter from "enzyme-adapter-react-16";
import { Provider } from "react-redux";
import configureMockStore from "redux-mock-store";
import configureStore from "../../../redux/configureStore";
import { fetchData, mutateData } from "../../../utils/graphqlUtility";

Enzyme.configure({ adapter: new Adapter() })

const store = configureStore();
//const store = mockStore({});

jest.mock('../../../utils/graphqlUtility', () => {
  return {
    A:"hihihi"
  };
});

describe('Personal Profile', () => {
  test('renders', () => {
    const wrapper = shallow(
      <Provider store={store}>
        <PersonalProfile />
      </Provider>
    );
    console.log(wrapper)
    let tree = wrapper.toJSON();
    expect(tree).toMatchSnapshot();
    //<div className="row pad"></div>
    //expect(wrapper.contains(<label>Bond Expiration Date</label>)).to.equal(true);
    //const paragraph = wrapper.find('div')
    //console.log("dsdsds",paragraph)
    //expect(paragraph).toHaveLength(1)
  });
});
  

В этом файле я уменьшаю компонент personalprofile, и этот компонент личного профиля вызывает некоторые методы файла graphqlutility, поэтому я издевался над файлом graphqlutility. И затем, когда я утешаю оболочку, она показывает мне вот так в консоли ShallowWrapper {} .Я не знаю, почему консоль отображается пустой?
введите описание изображения здесь

Я также прикрепил скриншот консоли. Кто-нибудь может мне помочь с этим?

Ответ №1:

Используйте enzyme функцию debug() :

 console.log(wrapper.debug());
  

Комментарии:

1. это очень помогло. Спасибо!