간단한 구성 요소가 렌더링되는지 테스트하고 싶습니다. (여전히 Jest를 알아 냈으므로) 테스트하고 싶습니다. 응용 프로그램 자체는 webpack으로 이미지를로드하여 로고를 표시합니다.Jest로 테스트하는 동안 webpack으로 이미지를 가져올 때 효소 렌더링이 실패합니다.
stateless 구성 요소를 마운트/렌더링/축소하려고하면 Jest에서 오류가 발생합니다.
FAIL src/components/blog/blogList.spec.jsx
● Test suite failed to run
/home/requinard/Projects/manus-frontend/src/img/manus_logo.png: Unexpected character '�' (1:0)
> 1 | �PNG
|^
2 |
3 |
4 | IHDR��G} pHYs.#.#x�?vtEXtSoftwareAdobe ImageReadyq�e<K�IDATx��] \�����=)DY
이미지를로드하려고 시도하는 중입니다. Jest가 모든 구성 요소의 이미지를로드하는 것을 중단하거나 이미지가로드되도록 렌더링을 계속 렌더링 할 수 있습니다.
상태 비 저장 구성 요소 :
import React from 'react';
PropTypes from 'prop-types';
import { BlogPostHeader } from './blogPostHeader';
import './blog.scss';
export const BlogList = props => (
<div className="blog-list">
{props.posts.map((post, key) => <BlogPostHeader post={post} key={key} className="blog-list-item" />)}
</div>
);
BlogList.propTypes = {
posts: PropTypes.array,
};
상태 비 저장 구성 요소
import React from 'react';
import { render } from 'enzyme';
import { BlogList } from './BlogList';
describe('<BlogList >',() => {
it('should render in enzyme',() => {
const wrapper = render(<BlogList />);
expect(wrapper).toBeTruthy();
});
});
(간체) 이미지 렌더링 구성 요소에 대한 시험 :
import logo from '../img/logo.png';'
<div className="logo-container"><img src={logo} className="logo-child" /> </div>