vue3配置jest自动化测试

这篇具有很好参考价值的文章主要介绍了vue3配置jest自动化测试。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前排提醒,并不是所有的项目都需要单元测试,因为写单元测试真的很耗时间。单元测试主要针对需求变更不多,项目时间充裕的项目。如elementui这种框架类的项目

本文主要针对vue3+vuecli4

这里主要有两种情况:新建项目和老项目

对于新建项目,在通过脚手架生成时可选择"unit testing",之后会自动生成相应配置。

这里主要介绍的是老项目添加单元测试。进入项目根目录,控制台输入

vue add @vue/unit-jest 

此时脚手架会自动安装jest相关依赖,并生成对应配置,修改文件如下:

1. package.json

"scripts": {
    "test:unit": "vue-cli-service test:unit",
  },
"devDependencies": {
    "@vue/cli-plugin-unit-jest": "~5.0.0",
    "@vue/test-utils": "^2.0.0-0",
    "@vue/vue3-jest": "^27.0.0-alpha.1",
    "babel-jest": "^27.0.6",
    "jest": "^27.0.5"
},
"rules": {},
"overrides": [
   {
     "files": [
        "**/__tests__/*.{j,t}s?(x)",
        "**/tests/unit/**/*.spec.{j,t}s?(x)"
     ],
     "env": {
        "jest": true
      }
   }
 ]

2. jest.config.js

module.exports = {
  preset: '@vue/cli-plugin-unit-jest'
}

3. test 文件夹,其中包含unit文件夹及example.spec.js文件,该文件为示例代码,可删除

import { shallowMount } from '@vue/test-utils'
import HelloWorld from '@/components/HelloWorld.vue'

describe('HelloWorld.vue', () => {
  it('renders props.msg when passed', () => {
    const msg = 'new message'
    const wrapper = shallowMount(HelloWorld, {
      props: { msg }
    })
    expect(wrapper.text()).toMatch(msg)
  })
})

文件生成之后其实已经可以进行单元测试了,可以在自动生成的unit文件下新建 xxx.spec.js 并引入需要测试的组件,也可以在对应的组件文件夹中新建__tests__文件,并在文件夹下新建xxx.test.js(规则可参考package.json中的override配置)

需要注意的是,有些项目可能配置了别名,这时就需要在jest.config.js中配置moduleNameMapper了

module.exports = {
  preset: '@vue/cli-plugin-unit-jest',
  moduleNameMapper: {
    '^@/(.*)$': '<rootDir>/src/$1',
    '^@base/(.*)$': '<rootDir>/base_component/$1'
  } // 别名
}

 这里我需要测试的是公共组件,因此在公共组件的button文件夹下新增了__tests__文件,并新建测试文件button.spec.js

import { mount } from '@vue/test-utils'
import ButtonComp from '../index'

test('button', () => {
  // const wrapper = mount(ButtonComp)
})

控制台运行jest发现报错

vue3配置jest自动化测试,单元测试,vue,unit testing

 因为项目用到的插件不符合规范,因为需要做兼容配置,在jest.config中新增transformIgnorePatterns配置

transformIgnorePatterns: [
    'node_modules/(?!lodash-es/.*)'
  ],

在此运行jest可以发现运行成功了

vue3配置jest自动化测试,单元测试,vue,unit testing 

至此配置完毕,可以愉快的进行测试用例编写了。以下为vue官方测试用例文档

Vue Test Utils  文章来源地址https://www.toymoban.com/news/detail-526623.html

到了这里,关于vue3配置jest自动化测试的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 初识小程序自动化 & Jest测试框架

    2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)-CSDN博客 文章浏览阅读1.9k次,点赞85次,收藏11次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口

    2024年02月02日
    浏览(31)
  • vue+jest 单元测试配置+用例

    目录 目录 1 Jest 说明文档 2 1、 搭建node环境包 2 这里安装环境是node 18,npm 9.5.0。 2 Test Runner 2 2、 安装jest 3 Jest安装步骤 4 项目的根目录下创建一个.babelrc 配置文件: 4 在项目的根目录下创建 jest.config.js 4 3、 全局设定 5 预处理和后处理 5 方法 6 4、 断言 6 真假断言 6 数字断言

    2024年02月07日
    浏览(38)
  • Vue3+vite路由配置优化(自动化导入)

    今天在维护优化公司中台项目时,发现路由的文件配置非常多非常乱,只要只中大型项目,都会进入很多的路由页面,规范一点的公司还会吧路由进行模块化导入,但是依然存在很多文件夹的和手动导入的问题。 于是我想到了我之前使用vuex时进行的模块化自动导入js文件,能

    2024年02月08日
    浏览(34)
  • 二、搭建前后端分离的自动化测试平台的前端Vue3+Element-plus前端项目

    1、Node获取地址 https://nodejs.org/en/download 一直默认选项安装,安装好了之后,在环境变量中会自动配置Node的地址,可以在cmd中使用 node -v/npm -v命令验证是否下载成功 2、设置Node的配置内容 (1)在安装目录下新建两个文件夹命名为node_cache,和node_global: 其中 node_cache 是作为 缓

    2024年02月06日
    浏览(52)
  • 自动化测试集成指南 -- 本地单元测试

    单元测试 (Unit Test) 是针对 程序的最小单元 来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。一个单元可能是 单个程序、类、对象、方法 等。 如何区分单元测试和集成测试,一般情况下,单元测试应该不依赖数据库,网络,I/O和其他模块,否则就是集成测

    2024年02月16日
    浏览(61)
  • 前端单元测试与自动化测试实践

    在前端开发中,单元测试和自动化测试是保证代码质量和稳定性的重要手段。通过编写和执行测试用例,可以及早发现代码中的问题,并确保代码在不同环境下的正确运行。本文将介绍前端单元测试和自动化测试的实践,并通过一个示例说明其重要性和具体操作。 前端单元测

    2024年02月12日
    浏览(46)
  • 自动化测试——unittest框架(单元测试)

    目录 一、unittest框架解析 1.1unittest的5个重要概念 1.1测试用例的编写及代码 1.2断言 1.3用例的执行顺序 1.4测试用例综合管理框架 1.5HTML报告生成 参考博文 unittest 单元测试提供了创建测试用例,测试套件以及批量执行的方案, unittest 在安装pyhton 以后就直接自带了,直接import

    2024年01月17日
    浏览(71)
  • Android 自动化单元测试

    2024年02月13日
    浏览(39)
  • MIL自动化单元测试

    之前学习MIL, 一直想对模型的进行自动化测试,最近正好做了,把心得写下来。 MIL测试就是模型在环测试,通过纯软件仿真的形式,验证模型能否满足功能需求,尽早发现问题。 MIL分为单元测试与集成测试 看图很好理解,集成测试闭环,单元测试开环。 确定被测模型的 输入

    2023年04月09日
    浏览(47)
  • Pytest自动化测试框架---(单元测试框架)

    unittest是python自带的单元测试框架,它封装好了一些校验返回的结果方法和一些用例执行前的初始化操作,使得单元测试易于开展,因为它的易用性,很多同学也拿它来做功能测试和接口测试,只需简单开发一些功能(报告,初始化webdriver,或者http请求方法)便可实现。 但自

    2024年02月14日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包