详解使用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 相关文章推荐
一些不错的js函数ajax
Aug 20 Javascript
extjs 学习笔记(一) 一些基础知识
Oct 13 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
Dec 16 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
Dec 23 Javascript
JS中完美兼容各大浏览器的scrolltop方法
Apr 17 Javascript
详解JavaScript数组和字符串中去除重复值的方法
Mar 07 Javascript
Javascript typeof与instanceof的区别
Oct 18 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
Dec 08 Javascript
Node.js使用Angular简单示例
May 11 Javascript
微信小程序按钮点击跳转页面详解
May 06 Javascript
关于JS解构的5种有趣用法
Sep 05 Javascript
一篇文章带你浅入webpack的DLL优化打包
Feb 20 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出现内存位置访问无效错误问题解决方法
2014/08/16 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
动态调用css文件——jquery的应用
2007/02/20 Javascript
实现png图片和png背景透明(支持多浏览器)的方法
2009/09/08 Javascript
String.prototype实现的一些javascript函数介绍
2013/11/22 Javascript
Asp.Net alert弹出提示信息的几种方法总结
2014/01/29 Javascript
js对文章内容进行分页示例代码
2014/03/05 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
在其他地方你学不到的jQuery小贴士和技巧(欢迎收藏)
2016/01/20 Javascript
mvvm双向绑定机制的原理和实现代码(推荐)
2016/06/07 Javascript
基于Bootstrap的后台管理面板 Bootstrap Metro Dashboard
2016/06/17 Javascript
bootstrap读书笔记之CSS组件(上)
2016/10/17 Javascript
JavaScript字符串对象(string)基本用法示例
2017/01/18 Javascript
ES6深入理解之“let”能替代”var“吗?
2017/06/28 Javascript
TypeScript中使用getElementXXX()的示例代码
2019/09/12 Javascript
js实现坦克移动小游戏
2019/10/28 Javascript
Vue.js实现可编辑的表格
2019/12/11 Javascript
react使用CSS实现react动画功能示例
2020/05/18 Javascript
antd vue table跨行合并单元格,并且自定义内容实例
2020/10/28 Javascript
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
python实现AES加密解密
2019/03/28 Python
Python3列表内置方法大全及示例代码小结
2019/05/10 Python
Python中的list与tuple集合区别解析
2019/10/12 Python
基于Python中isfile函数和isdir函数使用详解
2019/11/29 Python
python+OpenCV实现图像拼接
2020/03/05 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
2020/09/16 Python
销售类个人求职信范文
2013/09/25 职场文书
2014年教师个人工作总结
2014/11/10 职场文书
公司放假通知范文
2015/04/14 职场文书
2016元旦文艺汇演主持词
2015/07/06 职场文书
篮球比赛通讯稿
2015/07/18 职场文书
2016党员学习《反对自由主义》心得体会
2016/01/22 职场文书
民政局2016年“六一”儿童节慰问活动总结
2016/04/06 职场文书
毕业生自荐求职信书写的技巧
2019/08/26 职场文书
解决vue $http的get和post请求跨域问题
2021/06/07 Vue.js
springboot新建项目pom.xml文件第一行报错的解决
2022/01/18 Java/Android