测试Vue项目的重要性不应该被低估,Jest框架使得测试更加容易。
由于我们在Vue环境中,我们将使用一个测试项目来讲述如何使用Jest测试。
项目初始化
我们使用Vue CLI来初始化一个测试Vue项目。
- 安装Vue CLI:
|
|
- 创建测试Vue项目
|
|
测试
现在我们已经使用Jest生成了Vue项目,我们可以切换到tests/unit目录。
在这个目录里面,我们创建一个名为example.spec.js的文件:
|
|
我们输入命令来运行此单元测试:
|
|
这个命令会展示所有单元测试的结果。
目前,测试结果一切都ok。
我们在命令中添加–watch标志,以便在我们创建和编辑新测试时使其在后台运行。
|
|
单元测试
在这个例子中,我们将创建一个名为FancyHeading的新组件。
这是一个标题显示组件,可以使用自定义标题文案和颜色。
|
|
为了对此进行单元测试,我们需要在tests/unit目录中创建对应的FancyHeading.spec.js文件。
测试组件可以被认为是围绕测试特定模块或功能的测试集合。
让我们来看看Jest和Vue的第一次单元测试:
|
|
总结
- 导入Vue和我们想要测试的组件。
- 使用describe来封装组件的大量单元测试。
- 每个单元测试都是使用it函数创建的,第一个参数是测试描述,第二个参数是个回调函数。
- 在断言中,组件必选有正确的属性,我们可以封装一个方法来(例如:mountComponentWithProps)将我们的组件挂载到新的Vue实例上。
- 使用expect来证明测试是正确的。我们用npm run test:unit –watch检查我们的结果,我们将看到这个单元测试的结果是PASS的。
参考资料: https://alligator.io/vuejs/testing-vue-with-jest/#project-setup