小编Ery*_*win的帖子

如何编写单元测试来检查单击某个链接后是否显示模式

我正在学习使用 Jest/Enzyme 进行单元测试 - 特别是针对 React/Redux。我正在尝试编写一个测试来从用户的角度检查(这是正确的方法吗?...)单击某个链接后是否显示模式。接下来我想测试单击shade包装器是否modal关闭modal

模态状态(打开/关闭)由 Redux 控制。

根据 Redux 的当前状态 - 模态获取适当的样式:modalinvisibleModal

我尝试通过模拟 Redux store 来做到这一点,但我觉得没有它就应该完成 - 我想测试未连接的组件会更好,但如果我错了,请纠正我。

到目前为止测试:

const mockFn = jest.fn();

describe('Contact components', ()=>{
    it('<ContactModal /> renders correctly', ()=>{
        shallow(<ContactModal />)
    })

    it('<ContactForm /> renders correctly', ()=>{
        shallow(<ContactForm toggleContactModal={mockFn} />)
    })

});

describe('In contact form link',()=>{
    const link = shallow(<ContactForm toggleContactModal={mockFn}/>)
    const modalWrapper = shallow(<ContactModal />);

    it('toggleContactModal function is called upon clicking ContactForm',()=>{
        expect(modalWrapper.find('#modal').hasClass('modal')).toBe(false);
        link.simulate('click');

        expect(mockFn.mock.calls.length).toBe(1); …
Run Code Online (Sandbox Code Playgroud)

reactjs jestjs redux enzyme

11
推荐指数
1
解决办法
3万
查看次数

标签 统计

enzyme ×1

jestjs ×1

reactjs ×1

redux ×1