关于单元测试的vue - javascript

时间:2017-10-25 07:28:05

标签: javascript unit-testing vue.js

我看到许多测试真实DOM元素的单元测试示例。

例如:

expect(vm.$el.querySelector('div').textContent).toBe('xxx')

检查DOM元素文本的目的是什么?

有人说您可以测试计算值,但不是使用nextTick测试的计算值吗?

另外,人们说HTML标签会影响元素的文本:

<htmlTag><a><p>{{user.name}}</p></a></htmlTag>

如果产品有多种语言怎么办?

我认为我们应该测试应该在HTML模板中正确显示的数据,状态,函数和元素。

你们在Vue的单元测试中做了什么?

1 个答案:

答案 0 :(得分:1)

你提出了不同的问题,但我会尽力回答“一般问题”。关于DOM中的单元测试的问题。

DOM元素中的单元测试对于不同的原因可能很有用,但最重要的通常是:

  • 测试简单的用户操作

    简单用户操作的示例:

    单击切换DOM元素可见性的链接 提交触发表单验证的表单(...)这些 通过模拟DOM事件可以轻松测试操作

  • 分析网络特征

    操纵JavaScript以确定浏览器中的各种网络特征。示例here

  • 测试DOM突变&amp;操作

    一个很好的例子解释了here

正如你所说,直接测试状态/变量/方法更好,但有时它是真实或虚拟DOM的唯一方式。

要了解详情,您可以查看关于GitHub的这个(精彩)指南Unit Testing in JavaScript here

希望它澄清并帮助你!