📅  最后修改于: 2023-12-03 15:36:30.317000             🧑  作者: Mango
Jest 是一个流行的 JavaScript 测试框架,它专注于简单,快速和可扩展。在本文中,我们将介绍如何使用 Jest 测试 Express TypeScript 应用程序。
首先,我们需要安装 Jest。可以通过运行以下命令进行安装:
npm install --save-dev jest @types/jest ts-jest
这会安装 Jest、Jest 的 TypeScript 类型和一个运行 TypeScript 测试的插件 ts-jest。
要配置 Jest,请将以下内容添加到 package.json 文件中:
{
"scripts": {
"test": "jest"
},
"jest": {
"preset": "ts-jest",
"testEnvironment": "node"
}
}
这将在运行 npm test
时自动运行 Jest。preset
设置为 ts-jest
会告诉 Jest 为 TypeScript 运行测试,testEnvironment
会设置测试运行的环境,这里设置为 Node.js。
假设我们的 Express 应用程序是一个简单的 Hello World
示例,其代码如下:
import express from 'express';
const app = express();
app.get('/', (req, res) => {
res.send('Hello World');
});
const server = app.listen(3000, () => {
console.log('Server is running on localhost:3000');
});
export default server;
我们要编写一个测试用例来测试这个应用程序是否正确地返回 Hello World
。我们将创建一个名为 app.test.ts
的文件,其代码如下:
import request from 'supertest';
import server from './app';
describe('Test the root path', () => {
test('It should return Hello World', async () => {
const response = await request(server).get('/');
expect(response.text).toEqual('Hello World');
});
});
我们使用 supertest 库来发送一个 GET 请求并验证返回的响应是否符合我们的期望。使用 Jest 的 describe
和 test
函数来分组和运行测试用例,expect
函数来断言测试结果。
我们已经编写了一个测试用例,现在可以通过运行 npm test
命令来运行测试。如果一切正常,我们应该会看到输出 PASS
。
在本文中,我们介绍了如何使用 Jest 测试 Express TypeScript 应用程序。我们学习了如何安装 Jest、如何配置 Jest、如何编写测试用例并运行测试。希望这篇文章能帮助您在编写应用程序时编写出高质量的测试用例。