gpt4 book ai didi

javascript - #describe 和 #it 方法在 TDD react 测试中做了什么?

转载 作者:行者123 更新时间:2023-12-05 05:22:38 27 4
gpt4 key购买 nike

我正在通过这个 site 学习使用 React 的 TDD ,但是不明白作者是怎么得到describeit的,这些不是一般来自Jasmine吗?我没有在作者的 github 的 node_modules 中看到这个包,他的 tests.js 也没有导入任何看起来像 describeit 的东西。这两个方法从何而来?

import React from 'react';
import { expect } from 'chai';
import { shallow, mount, render } from 'enzyme';


describe('Test suite for User component', () => {
it('UserComponent should exist', () => {
let wrapper = shallow(<User />)
expect(wrapper).to.exist;
});
});

最佳答案

如果那是您要在测试套件中使用的唯一 it() 语句,那么您实际上并不需要 describe() block 。

describe() 结构确实存在于 Jest 中,它也存在于 Mocha 中。

describe() 函数用于将某些测试集组合在一起,这些测试集具有一些共同的设置和拆卸。这就是为什么我说,根据您粘贴的代码,如果您没有进一步测试的内容,则不需要 describe() 函数。

因此,当您运行 create-react-app 时,自动加载的库之一是 Jest 测试套件。

我也会重写那个测试,而不是 UserComponent 应该存在,我会这样做

it('shows a user component', () => {
let wrapper = shallow(<User />);
expect(wrapper.find(User).length).toEqual(1);
});

因此,我建议您不仅要遵循教程,还要查看他们让您在这些教程中使用的工具的文档。对于 Enzyme,有一个名为 find() 的非常好的方法来查找组件,它提供了一个数组,因此您可以添加 .length,因为它只是您可以在末尾添加 User 的一个组件 .toEqual(1);

关于javascript - #describe 和 #it 方法在 TDD react 测试中做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39863877/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com