简单的React / Enzyme测试失败了地图问题

时间:2018-03-13 17:30:34

标签: reactjs enzyme

我有一个简单的反应组件和一个简单的测试。由于某种原因它失败了。有人可以看一下吗?

这是组件。

import React from 'react'; 
import ToDoItem from '../ToDoItem/ToDoItem';

export default class ToDos extends React.Component {
    render() {

        const toDoItems = this.props.items.map((item, key) => (
            <ToDoItem item={item} key={key} />
        )); 

        return (
            <section> 
                { toDoItems }   
            </section>
        )
    }
}

不是火箭科学。这是测试:

it('displays all ToDo items passed as props', () => {
    const items = ['example1', 'example2']; 
    const toDos = mount(<ToDos items={items} />);
    expect(toDos.contains(<ToDoItem />)).toEqual(true);   
});

测试似乎非常困扰&#34; TypeError:无法读取属性&#39; map&#39;未定义&#34;它似乎无法读取物品道具。我没有在测试中正确传递数组吗?我不明白这里有什么问题。代码本身工作正常。这只是测试...帮助!

1 个答案:

答案 0 :(得分:0)

您未在组件中声明任何道具

constructor(props){
  super(props)
}