单元测试jest部署
引入jest需安装的基础插件:
基础插件
- @babel/core
说明:编译工具核心模块包 - @babel/preset-env
说明:编译工具,支持es2015特性的编译打包工具包 - babel-jest
说明:对.jsx、.js文件进行转义的包工具。 - jest
说明:jest单元测试模块包
引入jest的相关配置:
jest.config.js
若无jest.config.js,则执行jest --init,初始化jest的配置文件
修改如下配置:
moduleNameMapper: {
"^@/(.*)$": "<rootDir>/src/$1" //映射jssdk源码src的目录
}
babel.config.js
module.exports = {
presets: [
['@babel/preset-env', { //配置babel预置编译器为@babel/preset-env
targets: {
node: 'current'
}
}]
]
};
###JavaScript部署jest
####安装插件:
参照文首【引入jest需安装的基础插件】
####相关配置
参照文首【引入jest的相关配置】
###TypeScript部署jest
####安装插件:
__1.安装jest基础插件__
参照文首【引入jest需安装的基础插件】
__2.安装适配TypeScript相关插件__
- @babel/preset-typescript
说明:支持typescript的编译
- @types/jest
说明:在typescript中支持jest的afterAll、descript、test等关键字、断言等。
相关配置
基于文首【引入jest的相关配置】,配置babel.config.js
备注:只对应修改以下配置,勿粘贴覆盖。
module.exports = {
presets: [
['@babel/preset-env', {
targets: {
node: 'current'
}
}],
"@babel/preset-typescript" //新增此配置
]
};
###Vue部署jest
####安装插件:
__1.安装jest基础插件__
参照文首【引入jest需安装的基础插件】
__2.安装适配Vue相关插件__
- vue-jest
说明:提供jest支持vue的转义
- @vue/test-utils
说明:提供jest操作vue的API
- babel-core
说明:由于vue-jest引用的是babel-core,而不是@babel/core,所以还需要添加上babel-core的依赖,无法无法执行。
- jest-serializer-vue
说明:jest中对vue的序列化插件。
- @babel/plugin-transform-modules-commonjs
说明:Jest在Node中运行,因此需要将ES模块转换为CommonJS模块。因此,如果您使用的是webpack 2,则很可能需要将Babel配置为仅在test环境中将ES模块转换为CommonJS模块
相关配置
jest.config.js
备注:只对应修改以下配置,勿粘贴覆盖。
moduleFileExtensions: [
"js",
"json",
"jsx",
"ts",
"tsx",
"node",
"vue" //配置上vue的支持
],
snapshotSerializers: [
"<rootDir>/node_modules/jest-serializer-vue" //配置添加上生成vue快照的序列化器的模块
],
// A map from regular expressions to paths to transformers
transform: {
"^.+\\.js$": "<rootDir>/node_modules/babel-jest", //配置js文件的编译器
".*\\.(vue)$": "<rootDir>/node_modules/vue-jest" //配置vue文件的编译器
},
单元测试jest部署的更多相关文章
- 如何为我的VUE项目编写高效的单元测试--Jest
Unit Testing(单元测试)--Jest 一个完整的测试程序通常由几种不同的测试组合而成,比如end to end(E2E)测试,有时还包括整体测试.简要测试和单元测试.这里要介绍的是Vue中 ...
- react 单元测试 (jest+enzyme)
为什么要做单元测试 作为一个前端工程师,我是很想去谢单元测试的,因为每天的需求很多,还要去编写测试代码,感觉时间都不够用了. 不过最近开发了一个比较复杂的项目,让我感觉一旦项目大了.复杂了,而且还是多 ...
- 前端单元测试,以及给现有的vue项目添加jest + Vue Test Utils的配置
文章原址:https://www.cnblogs.com/yalong/p/11714393.html 背景介绍: 以前写的公共组件,后来需要添加一些功能,添加了好几次,每次修改我都要测试好几遍保证以 ...
- React单元测试——十八般兵器齐上阵,环境构建篇
一个完整.优秀的项目往往离不开单元测试的环节,就 github 上的主流前端项目而言,基本都有相应的单元测试模块. 就 React 的项目来说,一套完整的单元测试能在在后续迭代更新中回归错误时候给与警 ...
- 单元测试React
React单元测试——十八般兵器齐上阵,环境构建篇 一个完整.优秀的项目往往离不开单元测试的环节,就 github 上的主流前端项目而言,基本都有相应的单元测试模块. 就 React 的项目来说,一套 ...
- Eclipse使用EclEmma看单元测试的代码覆盖率
在开发过程中,我们应该养成编写本地单元测试用例的好习惯,甚至做到测试驱动开发.EclEmma是Eclipse的一个插件,是一款测试用例的代码覆盖率统计工具,能明确到哪一行在测试过程中被调用到了.这里不 ...
- Laravel大型项目系列教程(五)之文章和标签管理
一.前言 本节教程将大概完成文章和标签管理以及标签关联. 二.Let's go 1.文章管理 首先创建管理后台文章列表视图: $ php artisan generate:view admin.art ...
- Laravel大型项目系列教程(一)
Laravel大型项目系列教程(一) 一.课程概述 1.课程介绍 本教程将使用Laravel完成一个多用户的博客系统,大概会包含如下内容: 路由管理. 用户管理,如用户注册.修改信息.锁定用户等. 文 ...
- maven使用
Maven是一个项目管理和构建自动化工具.但是对于我们程序员来说,我们最关心的是它的项目构建功能,它定义了项目开发的几个标准步骤:编译,发布,单元测试及部署以帮助项目开发 最简单的时候场景是,在pom ...
随机推荐
- 微信小程序把玩(十六)form组件
原文:微信小程序把玩(十六)form组件 form表单组件 是提交form内的所有选中属性的值,注意每个form表单内的组件都必须有name属性指定否则提交不上去,button中的type两个subm ...
- spring-mvc+freemarker整合(sonne_game网站开发03)
今天的任务就是在spring+mybatis+springmvc的基础上,将freemarker整合进来. freemarker是什么? freemarker是一种模板引擎.它的目的是基于模板和数据, ...
- ORA-23421: job number 225 is not a job in the job queue
在对数据库进行异机恢复之后,为了防止上面作业自动执行,扰乱正常业务系统,需要将测试库上的作业和db_link进行删除:但是使用sys用户连接进去,删除的时候报如下错误SQL> exec DBMS ...
- 转换GMT秒数为日期时间格式-Delphi源码
转换GMT秒数为日期时间格式-Delphi源码.收藏最近在写PE分析工具的时候,需要转换TimeDateStamp字段值为日期时间格式,这是Delphi的源码. //把GMT时间的秒数转换成日期时间格 ...
- 第一式、单例模式-Singleton模式(创建型)
一.简介 单例模式主要用的作用是用于保证程序运行中某个类只有一个实例,并提供一个全局入口点.单例模式(Singleton)为GOF阐述的标准24种设计模式中最简单的一个.但随着时间推移,GOF所阐述的 ...
- java-mysql(2) Prepared statement
上一篇学习了java如何链接配置mysql,这篇学习下java如何处理sql预处理语句(PreparedStatement),首先是一个sql预处理的例子: package core; import ...
- 面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)
一.概述 面向过程:根据业务逻辑从上到下写代码 函数式:将具有一些功能的代码封装到函数中,需要的时候调用即可 面向对象:对函数进行分类和封装,让开发更方便,更快捷 Java和C#只支持面型对象编程,, ...
- justgage.js的使用
网址:http://justgage.com/ [1]需引入的文件: <!-- 引入 justGage相关js --><script src="js/raphael-2.1 ...
- spring boot单元测试之RestTemplate(一)
写代码重要,写好的代码准确无误,且符合预期那更是必不可少. spring boot内嵌了专门的单元测试模块——RestTemplate,保证了程序员可以对自己的代码进行及时的测试. 闲言少叙,直接上代 ...
- abp(net core)+easyui+efcore仓储系统——创建应用服务(五)
abp(net core)+easyui+efcore仓储系统目录 abp(net core)+easyui+efcore仓储系统——ABP总体介绍(一) abp(net core)+easyui+e ...