如何使用 React+enzyme 测试子组件不存在

How to test that a sub component doesn't exist with React+enzyme

假设我有一个组件,它有一个控制是否显示按钮的道具。我正在添加以下测试以确保始终观察到道具。

import React from 'react';
import { expect } from 'chai';
import { mount } from 'enzyme';
import { MyComponent } from '..';

describe( 'MyComponent', () => {
    it( 'should render as expected', () => {
    const wrapper = mount( <MyComponent showButton={ false } /> );
    expect( wrapper.find( '.button' ) ).to.have.length( 0 );
} );

我的问题是:有没有更好的方法来测试组件中不存在的东西?

我正在寻找更详细的内容。有没有像.to.not.exist这样的链?

如果您使用 chaiEnzyme (https://github.com/producthunt/chai-enzyme) it will provide you with a .to.not.be.present() or .to.not.exist (https://github.com/producthunt/chai-enzyme#present) 断言,您可以使用它来帮助清理这些类型的断言。