在我的react / jest单元测试中,我试图调用一个名为getSortedAppColumns()的静态方法,这是组件的一部分:
static getSortedAppColumns = (appColumns, sortBy, criticalFirst) => {
...
return { id, applications: applicationsSorted, ...rest };
});
};
当我运行此测试时:
it('should sort', () => {
const presets = { presets: { sortCriteria: 'name' } };
const component = (
<AppTrackerContainer applicationStages={applicationStages} {...presets} />
);
const wrapper = shallow(component);
const instance = wrapper.instance();
const appList = applicationStages[0].applications;
expect(instance.getSortedAppColumns(appList)).toMatchSnapshot();
});
我当然有这个错误:
TypeError: instance.getSortedAppColumns is not a function 45 | const instance = wrapper.instance(); 46 | const appList = applicationStages[0].applications; > 47 | expect(instance.getSortedAppColumns(appList)).toMatchSnapshot();
很明显,静态方法不是实例,但是如何在我的jest snapshottest中利用此静态调用?需要进行快照测试作为底线。