我刚接触测试对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>
`;
答案 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