Reactjs Cypress-Cypress单元测试中mountHook中的短截线/模拟redux挂钩
我试图对一个自定义钩子进行单元测试,该钩子也使用redux钩子,比如Reactjs Cypress-Cypress单元测试中mountHook中的短截线/模拟redux挂钩,reactjs,unit-testing,cypress,Reactjs,Unit Testing,Cypress,我试图对一个自定义钩子进行单元测试,该钩子也使用redux钩子,比如useSelector&useDispatch,但是我得到一个错误,钩子没有包装在提供者中。我正在使用cypress react unit test挂载钩子,但不确定如何绕过提供程序问题。感谢您的帮助 在内部,他们将钩子称为组件内部的钩子,所以我想知道是否有一种方法可以改变它 it('Check Groups keys for String', () => { mountHook(() => useGro
useSelector
&useDispatch
,但是我得到一个错误,钩子没有包装在提供者中。我正在使用cypress react unit test
挂载钩子,但不确定如何绕过提供程序问题。感谢您的帮助
在内部,他们将钩子称为组件内部的钩子,所以我想知道是否有一种方法可以改变它
it('Check Groups keys for String', () => {
mountHook(() => useGroups())
.then(uesGroupsResults => {
// assert here...
});
});
mountHook函数接受第二个options参数。其中一个选项是wrapper
。这可以设置为React组件,例如提供者
例如(来自最近更新的cypress react单元测试文档):
从“cypress react单元测试”导入{mountHook}
常量包装器=({children})=>{children}
mountHook(()=>useCustomHook(),{wrapper})
不幸的是,您引用了现在存档的cypress react单元测试
。然后,在@cypress/react 4.16.4的最新稳定版本中,我找不到任何mountHook()
选项和包装器支持。
import { mountHook } from 'cypress-react-unit-test'
const wrapper = ({ children }) => <Provider store={store}>{children}</Provider>
mountHook(() => useCustomHook(), { wrapper })