Jest快照未定义

时间:2017-09-24 14:15:34

标签: reactjs jestjs

我刚接触测试对jest的反应,我很困惑为什么生成的快照一直在说[undefined]。

我觉得我肯定在考试的某个地方犯了一个错误。而且我不确定这一点是对还是错。代码,测试和快照的代码发布在下面。

如果有人能提供帮助并指出我的方向,将不胜感激。

Checkbox.js

const styles = {
  checkbox: {
    color: '#ffffff',
    fontWeight: 100,
    fontSize: 14,
  },
};

const Checkbox = ({ label, checked, onChange, style }) => (
  <label style={{ ...styles.checkbox, ...style }}>
    <input checked={checked} type="checkbox" onChange={onChange} />
    {label}
  </label>
);

Checkbox.test.js

const label = 'Checkbox Test';
const checked = false;
const onChange = jest.fn();

describe('Checkbox', () => {
  it('renders correctly', () => {
    const cbTest = shallow(
    <Checkbox>
    <label style={{ ...styles.checkbox }}>
    <input checked={checked} type="checkbox" onChange={onChange} /> 
    {label}
    </label>
    </Checkbox>);
    expect(cbTest).toMatchSnapshot();
  });
});

快照

exports[`Checkbox renders correctly 1`] = `
<label
  style={
    Object {
      "color": "#ffffff",
      "fontSize": 14,
      "fontWeight": 100,
    }
  }
>
  <input
    checked={undefined}
    onChange={undefined}
    type="checkbox"
  />

</label>
`;

1 个答案:

答案 0 :(得分:1)

其原因是您没有将道具传递给Out[550]: 0 1 2 Type2 2017-9-11 47.0 176153.0 4.0 2017-9-12 39.0 178610.0 6.0 Type1 2017-9-11 15.0 115452.0 3.0 2017-9-12 26.0 198223.0 5.0 Type3 2017-9-11 0.0 0.0 0.0 2017-9-12 0.0 0.0 0.0 组件

Checkbox