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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/momDIY/article/details/80646667

应用场景

在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

猜你喜欢

转载自blog.csdn.net/momDIY/article/details/80646667
今日推荐