用vue test 做单元测试,wrapper.find 找到一个ul 元素, 我想接着找ul里面的li, 该怎么找呢?

wrapper.find 找到一个ul(页面有多个同类名的ul)元素, 我想接着找ul里面的li, 该怎么找呢?
我是这么写的;

const bar = wrapper.find('ul')

expect(bar.is('ul')).toBe(true)
const liF = bar.find('li');

expect(liF).toBe('kk')
liF.trigger('click');

报错如下:

expect(received).toBe(expected) // Object.is equality

Expected: "kk"
Received: {"selector": "li"}

Difference:

  Comparing two different types of values. Expected string but received object.

  163 |     const liF = bar.find('li');
  164 |
> 165 |     expect(liF).toBe('kk')
      |                 ^
  166 |     liF.trigger('click');
  167 |   })
  168 | })

  at Object.toBe (test/unit/specs/callStatistics.spec.js:165:17)
  
  

有些疑惑,不能连续找么,单独找很不方便

阅读 3.8k
2 个回答

能啊,这个报错难道不是告诉你单元测试没通过吗,你理解成单元测试本身写错了?

试试这样
wrapper.find('ul').find('li').text()

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题