如何测试期望接收对象的rest api?

问题描述

我正在学习测试和使用:

  • 快递
  • 开玩笑
  • 超级测试
  • 续集

这是 user.test.js,每次我运行测试时,它都会在数据库中创建一个用户对象,在 app.get("/") 中,我有一个

User.findAll({});

所以我想测试一些更“通用”的东西,比如用户对象,它可能,你有什么建议?

const app = require("../app");
const request = require("supertest");
const { User } = require("../models/");
const db = require("../models");

describe('User Model',() => {

    beforeAll(async () => {
        const user = await db.User.create({ name: "Paulo",email: "blablblalbalbal@gmail.com",password: "123mudar" });
        return user

    })

    it('List User',async () => {

        const res = await request(app).get("/");

        expect(res.body).toBe(user);
        expect(res.statusCode).toBe(200);
    });

});

解决方法

您应该模拟对 DB 或测试区域以外的任何地方的调用。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...