【问题标题】:How to check an element type with chai?如何用 chai 检查元素类型?
【发布时间】:2016-04-14 09:24:28
【问题描述】:

我想检查一个元素是a还是div,我该怎么做?
此代码不起作用:

it('has no link if required', () => {
        const wrapper = shallow(<AssetOverlay asset={ assetsData[0] } shouldBeLinked />);
        expect(wrapper.find('.overlay-asset-link')).to.be.a('a');

        const wrapper1 = shallow(<AssetOverlay asset={ assetsData[0] } shouldBeLinked="false" />);
        //expect(wrapper1.find('.overlay-asset-link')).to.be.a('div');
    });

【问题讨论】:

    标签: javascript unit-testing reactjs chai


    【解决方案1】:

    那是因为 chais 类型检查检查的是 javascript 类型,而不是 HTML-Tags。

    如果 wrapper.find() 返回一个普通的 HTML 元素,你可以实现你想要的测试:

    expect(wrapper.find('.overlay-asset-link').tagName).to.equal('A');

    注意:标记名属性总是大写的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-13
      • 1970-01-01
      • 2013-12-27
      • 2013-09-19
      • 1970-01-01
      • 2011-08-12
      • 1970-01-01
      • 2021-04-28
      相关资源
      最近更新 更多