作为Java开发人员和新手来应对我一直困扰于单元测试:
import React from 'react';
import ReactDOM from 'react-dom';
import SurveyEditor from './EditorEditor';
import ReactTestUtils from 'react-dom/test-utils';
import TestRenderer from 'react-test-renderer';
it('creates new section upon fucntion call', () => {
// editor itsels if root
const editor = TestRenderer.create(<Editor/>).root;
const button = editor .findByProps({ id: 'createNew'});
expect(button).toBeDefined();
ReactTestUtils.Simulate.click(button);
expect(editor .instance.state.sections.length).toBe(1);
}
它呈现了一个组件,按预期找到了按钮-但没有调度模拟点击(代码本身可以正常运行,我已验证了它)-显然我错过了一些显而易见的事情。
答案 0 :(得分:0)
您可能想为按钮上的onClick
事件创建一个存根,然后断言该存根已被调用。有关更多信息,请查看https://github.com/jamiebuilds/react-test-renderer