在我的情况下,我使用单个测试文件,我需要按顺序排列 .js:
//main.test.js
require("db.js");
require("tables.js");
require("users.js");
require("login.js");
require("other.js");
例如文件 users.js:
const request = require("supertest");
const assert = require("assert");
const { app, pool } = require("../src/app");
describe("POST /user/create", () => {
it("return unautorized without token", () => {
return request(app)
.post("/user/create")
.set('Accept', 'application/json')
.send({ token: "bad token..." })
.expect(401);
});
it("create user with token ok", () => {
return request(app)
.post("/user/create")
.set('Accept', 'application/json')
.send({
"email": "user1@dom.com",
"name": "John Doe",
"pass": "1234",
"token": "good token..."
})
.expect(200)
.expect('Content-Type', /json/)
.then(r => {
assert.deepStrictEqual(r.body, {
status: true,
info: 'user created',
data: { email: 'user1@dom.com', name: 'John Doe' }
});
pool.end();
})
;
});
});
避免在文件中使用单词 test 或 spec,只使用 1 .test.js