Reactjs 如何确定方法“;模拟&x201D;将在1个节点上运行。取而代之的是在玩笑中找到0

Reactjs 如何确定方法“;模拟&x201D;将在1个节点上运行。取而代之的是在玩笑中找到0,reactjs,jestjs,Reactjs,Jestjs,我正在Reactjs中使用jest编写一个测试用例,但是失败了,它给出了错误方法“simulate”应该在1个节点上运行。而是找到了0。我已经通过参考本文实现了测试用例 组成部分 render() { const { errors } = this.state; return ( <div style={{backgroundColor:'linear-gradient(RGBA(182,82,80))' , height:'50vh

我正在Reactjs中使用jest编写一个测试用例,但是失败了,它给出了错误
方法“simulate”应该在1个节点上运行。而是找到了0
。我已经通过参考本文实现了测试用例

组成部分

render() {
        const { errors } = this.state;
        return (
            <div style={{backgroundColor:'linear-gradient(RGBA(182,82,80))' , height:'50vh'}}>
                <Container className='mt-5 mb-3 ' style={{width:'40em',height:'36em',backgroundColor:"White",borderRadius:'20px'}}>
                    <form noValidate onSubmit={this.onSubmit} className='login'>
                        <div className="form-group">
                            <label>Email</label>
                            <input type="text" className="form-control" placeholder="Email"
                                   onChange={this.onChange}
                                   value={this.state.email}
                                   error={errors.email}
                                   id="email"
                                   name="email"
                                   className={classnames("", {
                                       invalid: errors.email || errors.emailnotfound
                                   })}
                            />
                            <span className="red-text">
                                {errors.email}
                                {errors.emailnotfound}
                            </span>
                        </div>
                    </form>

                </Container>
                <Footer/>
            </div>
        );
    }
render(){
const{errors}=this.state;
返回(
电子邮件
{errors.email}
{errors.emailnotfound}
);
}
测试用例

import React from 'react';
import {shallow} from 'enzyme';
import login from '../Components/login';

describe('Test case for testing login',() =>{
    it('username check',()=>
    {
        wrapper = shallow(<login/>);
        wrapper.find('input[type="text"]').simulate('change', {target: {name: 'email', value: 'krishankantsinghal'}});
        expect(wrapper.state('email')).toEqual('krishankantsinghal');
    })
})
从“React”导入React;
从“酶”导入{shall};
从“../Components/login”导入登录名;
描述('测试登录的测试用例',()=>{
它('用户名检查',()=>
{
包装器=浅();
find('input[type=“text”]”)。simulate('change',{target:{name:'email',value:'krishantsinghal'});
expect(wrapper.state('email')).toEqual('krishantsinghal');
})
})

可能的错误是什么?我怎样才能解决这个问题?提前感谢

小写的组件名称应该用于浏览器的本地元素,如
span
。当它是

import Login from './login.jsx';

...
... shallow(<Login ........)