我是反应测试库的新手,我热衷于使用酶。
当我浏览文档时,我发现 create-react-app 允许直接包含第三方测试库。我尝试了以下方法来添加酶,但没有成功。这是我尝试过的,但它在我的 app.test.js 中不起作用。
import React from 'react';
import {configure, shallow} from 'enzyme'
import AboutPage from './AboutPage';
describe('About us',() =>{
it('About us content validation', ()=>{
const wrapper = shallow(<AboutPage />);
const textHeader = <p className="value-col-heading">EMPATHY</p>;
expect(wrapper.contains(textHeader)).toEqual(true);
});
});
我收到以下错误:
Enzyme Internal server error : Enzyme expects an adapter...
我可以看到你的错误很明显,因为你没有为酶设置任何适配器。 Enzyme 是一个用于 React 的 javaScript 测试实用程序,可以更轻松地断言、操作和遍历 React 组件的输出。除此之外,它还需要一个适配器来配置它,如下所示:
您可以尝试一下这个方法,看看它是否有效:
import React from 'react';
import {configure, shallow} from 'enzyme'
import Adapter from 'enzyme-adapter-react-16' // require your adapter from
here
import AboutPage from './AboutPage';
configure({adapter : new Adapter()}); // use configure to pass your adapter
object
describe('About us',() =>{
it('About us content validation', ()=>{
const wrapper = shallow(<AboutPage />);
const textHeader = <p className="value-col-heading">EMPATHY</p>;
expect(wrapper.contains(textHeader)).toEqual(true);
});
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)