인프런 커뮤니티 질문&답변

jgam님의 프로필 이미지

작성한 질문수

TDD 개발 방법론을 활용한 React Native 앱 개발

개발환경 설정

jest - type error

해결된 질문

작성

·

350

1

Warning: React.createElement: type is invalid -- expected a st

ring (for built-in components) or a class/function (for composite co

mponents) but got: object.

yarn test를 할 때 이런 에러가 뜹니다. test는 원활하게 진행되지만, tdd개발을 배우는것이니 만큼 make it green하고 싶네요. 찾아보니 import export 에러일 영향이 크다고 하나, 특별히 에러가 날 부분은 찾지 못했습니다.

답변 4

1

jgam님의 프로필 이미지
jgam
질문자

해결 하였습니다! 감사합니다!

1

jgam님의 프로필 이미지
jgam
질문자

말씀하신 것으로 진행을 해보아도 똑같은 에러가 뜨네요. 저의 App.spec.js파일입니다.

import 'react-native';
import React from 'react';
import App from '../src/App';
import format from 'path';

describe('Jest', ()=> {
it('is it working?', () => {
const a = 1;
expect(a + 1).toBe(2)
})
})

참고로, tests라는 폴더가 없어서 제가 수동으로 만들었습니다. 물론 그 과정에서 app.spec.js파일도 제가 만들었구요.

1

박동호님의 프로필 이미지
박동호
지식공유자

안녕하세요. 저도 같은 에러를 본 적이 있습니다. 제 경우에는 아주 사소한 실수였는데요, 말씀하신것처럼 import/export 에러였습니다.

일례로 classA.js 에서

export default class ClassA extends Component {

}

 를 정의하고, classA.spec.js 에서 이를 위한 테스트 코드를 작성할때,

import { ClassA } from '???/classA' 

와 같이 하면 해당하는 오류가 발생합니다.

정확한 구문은

import ClassA from '???/classA' 

이죠. 혹시 이와같은 문제인지 한번 확인해보시기 바랍니다.

(저는 은근 자주 이런 문제가 발생합니다;; 오타도 많고, 잔실수가 많아서요;; TDD 가 저에게 꼭 필요한 이유이기도 하죠..)

0

박동호님의 프로필 이미지
박동호
지식공유자

다행이네요! 즐거운 코딩및 개발생활 하세요~

jgam님의 프로필 이미지

작성한 질문수

질문하기