详解使用mocha对webpack打包的项目进行"冒烟测试"的大致流程


Posted in Javascript onApril 27, 2020

第一步: 打包开始之前删除'./dist'目录

rimraf('./dist', () => {

constprodConfig = require('../../lib/webpack.prod')
webpack(prodConfig, (err, stats) \=> {
if (err) { 
  console.log(err) 
  process.exit(2)
  }

console.log(stats.toString({
  color:true,
  modules:false,
  children:false
  }))

// 第三步: 将测试规则添加到打包后
mocha.addFile(resolve(\_\_dirname, './html-test.js'))
mocha.addFile(resolve(\_\_dirname, './css-js-test.js'))
mocha.run()
})
})

第二步: 新建测试规则

const glob = require('glob');
describe('Checking generated html files',() \=> {
  it('should generate html files', (done) \=> {
  constfiles = glob.sync('./dist/+(index|search).html')
  if (files.length) {
    done()
  } else {
    thrownewError('no html files generated')
  }
 });
});

Tip: 关于glob.sync()方法的特别说明:

  • pattern {String}:匹配模式。
  • options {Object}
  • return: {Array<String>}:匹配模式下的文件名。

这里重点说说这个pattern, 这个pattern是字符串, 不是正则, 它有自己的匹配规则, 例如:

'./dist/+(index|search).html'

换成正则的写法为:

/\.\/dist\/(index|search)\.html/

不能苟同, 一定要区分

具体请移步这里: https://github.com/isaacs/node-glob

到此这篇关于详解使用mocha对webpack打包的项目进行"冒烟测试"的大致流程的文章就介绍到这了,更多相关mocha webpack 冒烟测试内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
Javascript中自动切换焦点实现代码
Dec 15 Javascript
Javascript单元测试框架QUnitjs详细介绍
May 08 Javascript
JS实现超简单的仿QQ折叠菜单效果
Sep 21 Javascript
解析JavaScript面向对象概念中的Object类型与作用域
May 10 Javascript
JavaScript的for循环中嵌套一个点击事件的问题解决
Mar 03 Javascript
vue.js中指令Directives详解
Mar 20 Javascript
JS正则替换去空格的方法
Mar 24 Javascript
vue2.0 better-scroll 实现移动端滑动的示例代码
Jan 25 Javascript
解决layer弹出层的内容页点击按钮跳转到新的页面问题
Sep 14 Javascript
jQuery实现小火箭返回顶部特效
Feb 03 jQuery
js实现扫雷源代码
Nov 27 Javascript
原生js中运算符及流程控制示例详解
Jan 05 Javascript
详解elementUI中input框无法输入的问题
Apr 27 #Javascript
基于jsbarcode 生成条形码并将生成的条码保存至本地+源码
Apr 27 #Javascript
Node.js API详解之 tty功能与用法实例分析
Apr 27 #Javascript
React.js组件实现拖拽排序组件功能过程解析
Apr 27 #Javascript
element 中 el-menu 组件的无限极循环思路代码详解
Apr 26 #Javascript
微信小程序个人中心的列表控件实现代码
Apr 26 #Javascript
vue项目中自定义video视频控制条的实现代码
Apr 26 #Javascript
You might like
PHP判断变量是否为0的方法
2014/02/08 PHP
用 Composer构建自己的 PHP 框架之使用 ORM
2014/10/30 PHP
PHP如何防止用户重复提交表单
2020/12/09 PHP
jQuery使用手册之一
2007/03/24 Javascript
IE 条件注释详解总结(附实例代码)
2009/08/29 Javascript
ImageZoom 图片放大镜效果(多功能扩展篇)
2010/04/14 Javascript
THREE.JS入门教程(4)创建粒子系统
2013/01/24 Javascript
jQuery性能优化28条建议你值得借鉴
2013/02/16 Javascript
jquery自定义下拉列表示例
2014/04/25 Javascript
jQuery1.9.1针对checkbox的调整方法(prop)
2014/05/01 Javascript
angularjs的一些优化小技巧
2014/12/06 Javascript
JS操作XML实例总结(加载与解析XML文件、字符串)
2015/12/08 Javascript
浅谈js数据类型判断与数组判断
2016/08/29 Javascript
详解微信小程序中的页面代码中的模板的封装
2017/10/12 Javascript
详解NODEJS基于FFMPEG视频推流测试
2017/11/17 NodeJs
JS中Object对象的原型概念基础
2018/01/29 Javascript
vue2.x 对象劫持的原理实现
2020/04/19 Javascript
viewer.js实现图片预览功能
2020/06/24 Javascript
javascript实现移动端触屏拖拽功能
2020/07/29 Javascript
Python实现全局变量的两个解决方法
2014/07/03 Python
深入理解python中函数传递参数是值传递还是引用传递
2017/11/07 Python
linux中如何使用python3获取ip地址
2019/07/15 Python
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
使用OpenCV实现仿射变换—平移功能
2019/08/29 Python
Tensorflow Summary用法学习笔记
2020/01/10 Python
python3检查字典传入函数键是否齐全的实例
2020/06/05 Python
CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
2020/11/17 HTML / CSS
Easy Spirit官网:美国休闲鞋履中的代表品牌
2019/04/12 全球购物
免税水晶:Duty Free Crystal
2019/05/13 全球购物
德国购买门票网站:ADticket.de
2019/10/31 全球购物
几个人围成一圈的问题
2013/09/26 面试题
Java编程面试题
2016/04/04 面试题
护理自荐信范文
2013/10/05 职场文书
大学生活学习的自我评价
2013/12/03 职场文书
汉语言文学毕业生自荐信范文
2014/03/24 职场文书
2014年教师学期工作总结
2014/11/08 职场文书