로메오의 블로그

[React Native] Jest - state 테스트 본문

App & OS/Hybrid

[React Native] Jest - state 테스트

romeoh 2019. 6. 17. 03:18
반응형

화면 코딩

/src/State.js

import React, { Component } from 'react';
import {
    View,
} from 'react-native';

export default class State extends Component {
    
    constructor() {
        super()
        this.state = {
            data: 0
        }
    }
	
    // test 할 함수
    multiple(x) {
    	// state를 변경한다.
        this.setState({
            data: x * 2
        })
    }

    render() {
        return (
            <View />
        );
    }
}

 

Test Code 작성하기

/__test__/State-test.js

import 'react-native';
import React from 'react';
import State from '../src/State';

import renderer from 'react-test-renderer';

it('state에 배수가 저장되어야 한다.', () => {
    const stateData = renderer.create(
        <State />
    ).getInstance()

    stateData.multiple(5)

    expect(stateData.state.data).toEqual(10)
});

 

Test Code 실행

$ npm test State-test.js

Test가 Pass 된 것을 확인 할 수 있습니다.

반응형
Comments