4

我想在按钮 onPress 功能运行后注册组件的快照。

这是我的测试套件:

describe('Login component', () => {
    // This runs fine. Snapshot OK
    it('Renders correctly', () => {
        const tree = renderer.create(<Login />).toJSON()
        expect(tree).toMatchSnapshot()
    })

    // This does not run fine. Snapshot is 'null'
    it('Contains error message when submit with empty fields', () => {
        const login = renderer.create(<Login />)
        const instance = login.getInstance()

        // Submit the form (default values = empty)
        instance.submit()

        // Force update (rerender) the component
        login.update()
        expect(login.toJSON()).toMatchSnapshot()

    })
})

上面的测试套件创建了两个快照。第一个测试在默认条件下快照组件的结构,并且似乎正确注册。

第二个测试应该在提交运行后记录组件结构,显示错误消息,提醒用户无法提交带有空字段的表单。

不幸的是,这并没有按预期工作,因为 afterlogin.update()运行,login.toJSON()返回null

我显然做错了什么,但是什么?文档似乎表明它update做了我认为它做的事情。

4

0 回答 0