为什么不测试实现就无法获得数字的123

来源:6-7 正式开始单元测试补全

大什么大

2020-12-14

老师,我还是有点不明白,
在本节当中,为什么如果我们直接用props.onChange的方式就是输出字符串

...
_NumberField.props('onChange')('123')
expect(value).toBe('123') // ok
...

而使用input的方式就是输出数字呢?

...
const input = _NumberField.find('input')
input.element.value = '123'
await input.trigger('input')
expect(value).toBe(123) // ok
...

单元测试不都会跑内部的代码吗?难道改变了测试的层级,结果都会不同?就算我只是采用第一种方式,应该也是123数字吧?毕竟我组件内部都是这样写的

写回答

1回答

Jokcy

2020-12-16

第一个你直接调用了`onChange`,所以你传的是什么就是什么。后面的你触发了input的事件,实践触发了组件内的代码,所以转了数字

0
0

Vue3.0+TS打造企业级组件库 前端中高级开发者必修课

深度匹配高级前端工程师用人需求 打造属于你自己的开源项目

1310 学习 · 250 问题

查看课程