Jest无法创建快照。

6
我已经创建了下面的Jest测试文件。但是该文件的快照未被生成。我的代码有什么问题?
import React from 'react';
import Carousel from './component';
import renderer from 'react-test-renderer';

test('Carousel Component Test Suite', () => {

const component = renderer.create(
    <Carousel
       />
);

let tree = component.toJSON();
expect(tree).toMatchSnapshot();

});

你有收到任何错误吗?你是否在tree上做了一个console.log来查看它是否有值?我在代码中没有发现任何明显的问题。你是否使用--u作为参数运行过,因为这是更新快照文件的方式? - Dan Mason
在控制台中,没有任何内容被打印。错误是无法读取未定义的属性“0”。slideIndex在组件中被初始化为0。 - sheeba
在这种情况下并不是问题,但是除非测试调用toMatchSnapshot或类似的函数,否则不会生成.snap文件。 - tschumann
2个回答

9

您需要更新测试用例。在命令提示符/终端等中输入以下命令。

npm test -u YourTest.spec.js

请在项目根目录下执行此操作。


1
我在本地运行它(替换为简单组件),生成了一个.snap文件。
据我所见,一切看起来都很好,但可能是由于您使用的特定依赖版本存在问题(但如果没有看到您的package.json,就无法确定)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接