nodejs实现启动项目=>运行测试=>关闭项目完整流程

应用场景

在node项目中要想实现正确的api测试需要在项目启动正常的情况下进行测试,测试之后我们又需要将项目关闭,整个流程走下了踩了不少坑,在这里分享下我的最终解决方案(项目链接在文末)。

背景准备

  • 一个可运行的node项目
  • 该node项目中接口测试在项目启动环境下运行正常

主要步骤

1.测试中引入node项目入口文件

首先需要在测试代码头部node项目入口文件,也就是在执行测试用例之前通过入口文件node项目就会被启动。

let start = require('../bin/start')
2.执行测试

执行正常的api测试。

3.实例对象导出

在关闭项目服务时我们需要创建这个项目服务的实例对象,也就是以下这个对象

let server = http.createServer(app)

要想关闭项目我们需要使用到这个对象的close方法,要想在测试文件中获得这个对象我们需要将这个对象导出。

exports = module.exports = server
4.使用after钩子函数触发关闭项目动作

测试用例执行完毕,如有after钩子函数会最后执行这个函数。我们可以在这个函数中愉快滴关闭项目了。

after(() => start.close())
注意

以上提到的server对象是我在入口文件中定义并且导出的,因此可以直接在测试文件中require并在after钩子函数中使用。以上只展示了我的关键代码和思路,如果没看明白可以直接点击下面的链接看看完整的功能实现。

感兴趣可点下面的链接

GitHub项目

Travis CI关于该项目测试的持续化集成

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值