Javascript 如何测试使用React Autosuggest的组件

Javascript 如何测试使用React Autosuggest的组件,javascript,reactjs,jestjs,enzyme,Javascript,Reactjs,Jestjs,Enzyme,我正在尝试测试一个React组件,它类似于以下内容 const MyComponent = ({ onChangCallMe, onSelectCallMe }) => { // onChangCallMe -> sets the state of some other component // onSelectCallMe -> -> sets the state of some other component return ( <Autosugg

我正在尝试测试一个React组件,它类似于以下内容

const MyComponent = ({ onChangCallMe, onSelectCallMe }) => {

// onChangCallMe -> sets the state of some other component  
// onSelectCallMe -> -> sets the state of some other component

return (
    <Autosuggest
        onChange={ value => onChangCallMe(value)}
        onSelect={ selected => onSelectCallMe(selected) }
    />)
}
constmycomponent=({onChangCallMe,onSelectCallMe})=>{
//onChangCallMe->设置其他组件的状态
//onSelectCallMe->->设置其他组件的状态
返回(
onChangCallMe(值)}
onSelect={selected=>onSelectCallMe(selected)}
/>)
}
如何测试这个组件?确保onChangCallMe、onSelectCallMe被正确调用


问题是,如果我像这样模拟Autosuggest
jest.mock('./react Autosuggest')
,那么它将不会显示实际输出,也不会侦听不同的事件,例如ChangeEvent和SelectEvent。

模拟Autosuggest时,您用什么替换它?给出一个@jornsharpe,我将其替换为,
jest.mock('./react autosuggest')
,因为这不是模拟从节点模块导入的路径。另一方面,您可能希望提供一个实现。@lynxx是一个npm包(在node_模块下)的Autosuggest,或者您实现了它,它是源代码的一部分?@yaya它是一个npm包。当您模拟Autosuggest时,您用什么替换它?给出一个@jornsharpe,我将其替换为,
jest.mock('./react autosuggest')
,因为这不是模拟从节点模块导入的路径。另一方面,您可能希望提供一个实现。@lynxx是一个npm包(在node_模块下)的自动建议,或者是您在源代码中实现了它?@yaya它是一个npm包。