Postman – 为CRUD创建测试

Postman – 为CRUD创建测试

Postman是一款常用于API开发、测试、管理的图形化界面工具。它使得开发者能够轻松地使用各种HTTP请求(例如GET,POST,DELETE等)来测试API,还可以进行测试自动化。本文将介绍如何使用Postman来为CRUD操作创建测试。

什么是CRUD操作?

CRUD是一个术语缩写,它代表了四个基本数据库操作:创建(Create)、读取(Read)、更新(Update)和删除(Delete)。这四个操作是现代Web应用程序中最基本的操作。在大多数应用程序中,这些操作都是基于HTTP请求来实现的。

例如,考虑一个简单的RESTful API,通过它可以操作一个商品列表,那么以下端点表示CRUD操作:

  1. 创建商品 – POST /api/products
  2. 读取商品 – GET /api/products/:id
  3. 更新商品 – PUT /api/products/:id
  4. 删除商品 – DELETE /api/products/:id

这些端点都返回JSON对象,这些对象具有不同的属性,具体取决于数据模型。我们将使用Postman来测试这些API操作是否成功。

在Postman中创建环境变量

在Postman中创建环境变量是一个好习惯。环境变量允许您轻松地在测试之间切换基本URL和其他常量。为此,我们需要在Postman界面左上方的“管理环境”中创建新环境。假设我们将其命名为“ProductAPI”。接着,我们需要设置基本URL为我们Web应用程序的基本URL(假设为http://localhost:3000)。环境变量将被储存在{{}}中。

创建创建商品测试

那么,让我们开始创建测试。我们首先需要创建一个新的POST请求并填写基本信息。这里,我们将请求设置为使用我们之前设置的环境变量。在新请求中点击“Params”选项卡,为商品提供名称和价格参数:

{
  "name": "iPhone X",
  "price": 999.99
}

现在,我们需要测试,是否我们的API端点正确响应,在Tests选项卡中,我们可以添加这个测试用例的代码:

pm.test("Create product test", function () {
    pm.response.to.have.status(201);
    // 校验响应中相关字段
    pm.response.to.have.jsonBody('name', 'iPhone X');
    pm.response.to.have.jsonBody('price', 999.99);
});

在这个测试用例中,我们向Postman提供了一个名为“Create product test”的标题,并检查响应的状态码(是否为201),还检查响应主体的JSON对象是否包含名称成为“iPhone X”的属性和价格为999.99的属性。如果测试通过,我们将看到所有测试用例都为绿色,否则,在响应代码下方我们将看到错误消息。

创建读取商品测试

现在,我们将重复以上步骤并创建“读取商品”测试。我们先创建一个新的GET请求及其相关参数 – 商品ID为1。接着,我们向测试用例添加测试代码:

pm.test("Read product test", function () {
    pm.response.to.have.status(200);
    pm.response.to.have.jsonBody('name', 'iPhone X');
    pm.response.to.have.jsonBody('price', 999.99);
});

在这个测试用例中,我们向Postman提供了一个名为“Read product test”的标题,并检查响应的状态码是否为200,JSON对象是否包含一些属性值与我们之前创建的“Create product”请求的响应一样。如果测试通过,我们将看到所有测试用例都为绿色,否则,在响应代码下方我们将看到错误消息。

创建更新商品测试

对于更新商品,我们将使用与创建商品测试相同的请求端点,但是此次我们需要在请求中包含商品ID以确保我们正在更新正确的商品。我们重新创建一个新的PUT请求,并提供商品ID、商品名称和价格参数。接着,我们向测试用例添加测试代码:

pm.test("Update product test", function () {
    pm.response.to.have.status(200);
    pm.response.to.have.jsonBody('name', 'iPhone 11');
    pm.response.to.have.jsonBody('price', 1299.99);
});

在这个测试用例中,我们向Postman提供了一个名为“Update product test”的标题,并检查响应的状态码是否为200,JSON对象是否包含我们更新后的商品属性。如果测试通过,我们将看到所有测试用例都为绿色,否则,在响应代码下方我们将看到错误消息。

创建删除商品测试

最后,我们将创建一个DELETE测试,以确保我们可以正确地从数据库中删除已创建的商品。我们将创建一个新的DELETE请求和一个相关参数(商品ID为1),然后向测试用例添加测试代码:

pm.test("Delete product test", function () {
    pm.response.to.have.status(204);
});

要注意的是,在这个测试用例中,我们检查的是响应状态是否为204,而不是响应具有响应主体。因为我们没有期望获得一个响应实体。

如果测试通过,我们将看到所有测试用例都为绿色,否则,在响应代码下方我们将看到错误消息。

结论

通过本教程,我们了解了如何使用Postman为我们的API操作(CRUD)创建测试。使用Postman,测试API可以变得更加容易,快捷和可靠。这些测试不仅提高了我们API的质量,而且可以节省我们很多的时间和精力。现在,我们可以更有信心地部署我们的API,并对其进行测试。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程