怎么使用玩笑和Supertest进行接口端点测试

  介绍

这篇文章主要讲解了怎么使用玩笑和Supertest进行接口端点测试,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

如何创建测试是一件困难的事。网络上有许多关于测试的文章,却从来不告诉你他们是如何开始创建测试的。

所以,今天我将分享我在实际工作中是如何从头开始创建测试的。希望能够对你提供一些灵感。

<强>目录:

    <李>使用表达创建一个应用 <李>使用猫鼬链接MongoDB李 <李>使用笑话作为测试框架李

<强>为什么使用玩笑

    <李>易于使用李 <>李wath-mode非常棒李

<强>开始使用玩笑
首先,你需要安装它:

 npm安装开玩笑——save-dev 

接着,将测试启动脚本添加到<代码>包。json> “scripts": {   “test":“jest"   “测试:watch":“开玩笑——watch"   },

添加测试<代码> 和<代码>测试:看>

使用以下任意方法,笑话就能识别哪些是测试文件:

    <李>
      <李>位于<强>测试强文件夹下的所有js文件
    <李>
      <李>文件名以测试。js结尾的文件,譬如user.test。李js
    <李>
      <李>文件名以spec.js结尾的文件,譬如user.spec。李js

你可以把它们放在任何位置。但我总是把测试文件和接口放在一起,这有利于维护管理。

 -路线
  | - - - - - -用户/| - index.js
  | - users.test。js 

<强>编写你的第一个测试
Jest包含了<代码>雅思,<代码> ,<代码>期待>

    <李>描述用来组织文件中的测试项李 <>李用它来运行测试用例 <李>期望用于执行断言,当所有断言通过时,该测试才会通过李

举一个测试失败的栗子。在该例中我<代码>期待 1应该严格等于2。但由于1 !==2,所以测试失败。

它(& # 39;测试,看看笑话作品# 39;,()=比;{   希望(1).toBe (2)   })

如果运行测试,你会看到错误信息。

 npm运行测试:看

怎么使用玩笑和Supertest进行接口端点测试

更改测试用例使得测试通过:

它(& # 39;测试,看看笑话作品# 39;,()=比;{   希望(1).toBe (1)   })

怎么使用玩笑和Supertest进行接口端点测试

虽然已经包含了使用玩笑进行测试的大部分内容,但却没啥卵用,因为实际工作中的测试比这复杂多了。

<强>异步测试
你需要发送请求来测试接口。请求是异步的,这意味着你必须能够编写异步测试用例。

使用玩笑编写异步测试非常容易,仅仅需要两步:

    <李>
      <李>添加异步关键字
    <李>
      <李>在测试的最后一步,调用了

就像这样:

它(& # 39;异步测试# 39;,异步完成=比;{//其他逻辑      (完成)   })

<>强测试接口
可以选择Supertest来测试接口。我们先安装Supertest。

 npm安装supertest——save-dev 

在测试接口之前,需要设置下服务器,以便supertest在测试中使用它。

大多数教程都告诉你,在服务器文件中监听表达应用端口,像这样:

const表达=要求(& # 39;表达# 39;)   const应用=表示()//中间件)……//路线……      app.listen (3000)

这有个潜在问题,当你编写了多个测试文件,运行测试时,会产生“港口use"的错误。

如果想要在每个测试文件都启动一个新的服务,你需要导出一个没有监听端口的应用。

//start.js
  const应用=要求(& # 39;/server.js)。
  app.listen (3000) 

<强>使用Supertest
在测试文件内导入应用程序和Supertest来测试接口。

怎么使用玩笑和Supertest进行接口端点测试