HTTP测试----supertest

这篇博客介绍了在开发中如何利用supertest模块进行HTTP测试。它提供了一个高级抽象层来简化接口请求和结果解析。作者对比了参考文档中的测试示例和自己的实践,强调中间件只需关注输入输出,测试时在路由下使用并返回响应。
摘要由CSDN通过智能技术生成

前言

在做nodejs开发中,难免会遇到HTTP相关的测试,一般需要依赖模块supertest或者superagent,supertest依赖后者。

The motivation with this module is to provide a high-level abstraction for testing HTTP。

先从介绍说起,supertest提供HTTP测试抽象接口。本质上来说,是直接向接口发起HTTP请求并解析结果,然后针对结果进行assert

参考文档

  • https://github.com/visionmedia/superagent
  • https://github.com/visionmedia/supertest

中间件测试示例----bodyparse.json

bodyparse的作者测试用例跟我最初的思考有差异,但更简洁。原作者将中间件直接在createserver回调函数中使用,此时的三个参数在实际使用时由express进行控制,此处是显式声明。

function createServer(opts){
  var _bodyParser = bodyParser.json(opts)
  return http.createServer(function(req, res){
    _bodyParser(req, res, function(err){
      res.statusCode = err ? (err.status || 500) : 200;
      re
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值