使用 Mocha 和 Chai 在 Express 中测试 Node JS 中的 REST API 😎 目录 什么是单元测试?!为什么要使用单元测试?谁使用单元测试?!结论
使用 Mocha 和 Chai 在 Express 中测试 Node JS 中的 REST API
目录
什么是单元测试?!
为什么要使用单元测试
谁使用单元测试?!
结论
目录
什么是单元测试?!
是一种软件测试方法,通过该方法,软件开发人员编写和运行源代码的各个单元和通常是自动化的测试,以确保应用程序的某个部分(称为“单元”)符合其设计并按预期运行。
为什么要使用单元测试
测试是人们要么喜欢要么讨厌的事情之一。通常测试是令人讨厌的事情

谁使用单元测试?!
为了开始这次旅行,我已经创建了简单的 REST API(获取、发布等)

Chai是 NodeJS 和浏览器的断言库,有三种风格 [ should, Expect, Assert]
Mocha是一个 JavaScript 测试框架,each 是一个非常棒且构建良好的 JavaScript 测试库

1.为了开始这一切,我们需要做的就是安装两个库
run npm i mocha chai --save--dev

2.现在下载已经完成,我们来到这里,这里有测试脚本,我们可以通过输入来更改它"test": "mocha"

3.因此,要开始创建第一个测试,只需创建名为 test 的文件夹并添加一个新文件 task.js,并赋予它与要测试的文件完全相同的名称,在我们的例子中,我们将测试

4.现在在这个文件中,我们需要导入路由文件(task.js),包括所有 API,为了编写测试,我们需要导入 chai,然后添加断言
'
5.现在我们可以调用我们的 RESTful API,为了使用mocha描述我们的测试,让我们调用它tasks API
,然后我们定义一个箭头函数,所以第一个任务是描述 Get API,让我们调用它,Get-All-Tasks
然后使用它来描述我们的 API 做什么it should Get all the tasks
6.在这里我们使用chai并chai.request(server)
测试我们期望使用的 Get API .get("/api/tasks")
,它将接收错误和响应,因此我们期望成功的结果,因此响应应该具有状态 200,并且主体应该是一个包含 3 个任务的数组.end((err, response)

7.最后调用Done()
,并使用运行npm test
,测试成功运行


如果您需要请求错误的路线来显示 API 响应,我们会进行一些小的更改

测试 GET(按 ID)路由相同的步骤,但我们将添加任务 ID,并在响应中检查返回的属性

结论
测试是开发人员最重要的技能之一,很多人不教也不关注这一点,但如果你知道测试,它会让你从其他不了解测试的开发人员中脱颖而出,并在你申请工作时为你提供额外的优势
鏂囩珷鏉ユ簮锛�https://dev.to/mhmdlotfy96/testing-a-rest-api-in-node-js-with-express-using-mocha-and-chai-1258