【问题标题】:Tests to simple Node, Express, mySQL API测试简单的 Node、Express、mySQL API
【发布时间】:2021-09-04 15:43:49
【问题描述】:

我需要为我的应用后端创建测试。该应用程序只是一个使用 react-hooks-form 创建的简单表单。不幸的是,我不知道该怎么做。

const express = require('express');
const app = express();
const mysql = require('mysql');
const cors = require('cors');

app.use(cors());
app.use(express.json());

const db = mysql.createConnection({
    user: "root",
    host: "127.0.0.1",
    password: "password",
    database: "event_form"
});

app.post('/create', (req, res) => {
    const firstName = req.body.firstName;
    const lastName = req.body.lastName;
    const email = req.body.email;
    const date = req.body.date;

    db.query('INSERT INTO members (firstName, lastName, email, date) VALUES (?,?,?,?)',
    [firstName, lastName, email, date],
    (err, result) => {
        if(err) {
            console.log(err);
        }else {
            res.send("Values inserted");
        };
    }
    );
});

app.listen(3001, () => {
    console.log("Your server is runnih at port 3001!!!!")
})

如何给它写测试? 提前致谢!

【问题讨论】:

    标签: mysql node.js api express unit-testing


    【解决方案1】:

    您可以使用许多工具,例如 PostmanReadyAPI 来测试您的 Web API 应用程序。我建议您使用邮递员,因为它易于使用,并且您可以将您的请求保存在您的帐户中。

    或者,您可以使用 CLI(命令行界面)工具,例如 curl 或 Invoke-WebRequest。

    适用于 Windows Powershell

    $myForm = @{firstname='yourfirstname';lastname='yourlastname';email='youremail';date='1999-06-13'}
    Invoke-WebRequest -Uri http://localhost:3001/create -Method POST -Body $myForm
    

    适用于 Linux Bash

    curl -H "Content-Type: application/json" -X POST -d '{"firstname":"yourfirstname","lastname":"yourlastname","email":"youremail","date":"1999-06-13"}' http://localhost:3001/create
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-20
      • 1970-01-01
      • 2013-10-05
      • 2019-08-29
      相关资源
      最近更新 更多