乐趣区

关于前端:基于Mocha的接口测试框架

经验断更 8 个多月后我又回来分享干货了!
笔者去年在公司做了一个 E2E 的测试项目,当然是基于 Mocha 开发的一套测试程序,尽管从其中学习到了一些教训但同时因为集体有强迫症所以也发现了 Mocha 的一个让我很好受的问题: 要么在浏览器端运行,要么在 Node 端运行 … 对于我来说这就很好受了,为什么呢?

痛点

首先阐明本篇基于 Mocha v3.2.x

在浏览器端应用 Mocha 尽管能够生成各种炫酷的报表,然而咱们只能写根底 JavaScript 代码,然而波及到打包、部署或者新语法的状况下,那就可能就有点麻烦了;其次切实 Node 端,在这里咱们就能够各种写各种骚,然而测试后果只是冷冷的命名行显示(原谅笔者没发现别的方法,可能是钻研不深刻)。所以笔者就开始头脑风暴了,能不能把两者通过打包的形式联合起来应用?

拨开云雾见天日

果然不出所料,在 Webpack 文档找到了一个牛叉的 mocha-loader. 这就很棒!!!
而后笔者就开始各种钻研各种测试,终于搞下了这套心心念念的测试框架

开吹环节

为什么笔者称之为框架? (看什么看?没见过装逼啊?)。因为这套工具曾经在理论我的项目中应用过,当初分享的代码只是根底框架代码,咱们能够在此基础上做你想做的扩大,当然只限于接口测试,如果想做 E2E 之类的页面测试,可能就麻烦了。

设计思路

其实没啥设计思路。就是失常的 Mocha 接口测试代码调用 Node 的服务,Node 服务做转发性能进而去拜访真正的须要测试的接口并给 Mocha 测试程序返回后果。这样做的益处有两个: 1. 解决了页面接口测试跨域问题;2. Mocha 程序 (也就是页面) 不须要涉及指标接口,有利于接口爱护。

我的项目构造

这里的 simple.test.js 是一个示范例子, serverjs 就是用来做转发的 Node 服务。有趣味的童鞋能够尝试下这套框架,或者它不是最好的,然而它必定是最帅的。
Giao…..

退出移动版