React Jest,Enzyme删除或隐藏已接收的部分

时间:2018-01-17 17:22:00

标签: enzyme jest

我正在探索我的React构建测试,一般情况下 - 所有工作都按预期进行。 我对测试的“已收到”信息部分有疑问。

我真的需要整个信息吗?因为它看起来多余。

例如,我对DOM元素进行简单检查,期望得到1并得到2 - 我对这部分感到满意​​,但是我怎么能隐藏所有那些意大利面?

enter image description here

package.json的Jest部分:

"jest": {
    "setupTestFrameworkScriptFile": "./node_modules/jest-enzyme/lib/index.js",
    "unmockedModulePathPatterns": [
      "react",
      "enzyme",
      "jest-enzyme"
    ]
  },

2 个答案:

答案 0 :(得分:1)

您正在比较整个浅层渲染。 toHaveLength并不是一直为我工作的。

尝试:

期望(wrapper.find(" .testing-目的"。)长度).toBe(2);

答案 1 :(得分:1)

你可以做几件事,

  1. 检查查找元素是否退出

    expect(wrapper.find(".testing-purposes").exists()).toBe(true);
    
  2. 检查返回元素的长度,如

     expect(wrapper.find(".testing-purposes").length).toBe(2);
    
  3. 根据 documentation

      

    使用.toHaveLength检查对象是否具有.length属性   并将其设置为某个数值。

         

    这对于检查数组或字符串大小特别有用。

    对你来说似乎并非如此