Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 使用React Router/Jest/Ezyme测试路线时遇到问题_Reactjs_React Router_Jestjs_Enzyme - Fatal编程技术网

Reactjs 使用React Router/Jest/Ezyme测试路线时遇到问题

Reactjs 使用React Router/Jest/Ezyme测试路线时遇到问题,reactjs,react-router,jestjs,enzyme,Reactjs,React Router,Jestjs,Enzyme,因此,我一直在试图找出如何为我的组件编写单元测试,该组件使用React路由器有条件地呈现组件。我的问题是,无论我做什么,我都无法让它渲染根路径以外的任何东西 为了进一步研究这一点,我整理了一小段测试代码,包括: it('testing', () => { const component = mount( <MemoryRouter initalEntries={ [ '/next' ] }> <Swi

因此,我一直在试图找出如何为我的组件编写单元测试,该组件使用React路由器有条件地呈现组件。我的问题是,无论我做什么,我都无法让它渲染根路径以外的任何东西

为了进一步研究这一点,我整理了一小段测试代码,包括:

it('testing', () => {
        const component = mount(
            <MemoryRouter initalEntries={ [ '/next' ] }>
                <Switch>
                    <Route path="/next" render={ () => <p>Next</p> } />
                    <Route path="/" exact render={ () => <p>Root</p> } />
                </Switch>
            </MemoryRouter>
        );

        console.log(component.debug());
    });
it('testing',()=>{
常量组件=挂载(
下一步

}/> 根目录

}/> ); log(component.debug()); });
因此,我的期望是,这段代码将呈现下一个,因为我正在走下一条路线。但是,它将只呈现根目录


如果有人能帮助我理解我在这里做错了什么,我将不胜感激。谢谢。

所以我把“初始条目”拼错了,这就是问题所在。谢谢。

我得到了正确的答案(因此在
debug
中有
Next
,但不是
Root
)。jest 23.6.0,Ezyme 3.8.0,react router 4.3.1这有助于我在react中进行测试时,我不知道有调试命令