Trade Me-4-检索您的监视列表 API 测试 | Postman接口自动化测试

API 功能

检索经过身份验证的用户监视列表中的项目列表。

API - 检索您的监视列表脚本开发步骤

API规范->业务展示->API测试脚本调试->API测试脚本增强->API测试脚本反向案例扩展->API测试脚本发布

API规范

  • 关键请求字段

img

  • 关键响应字段 - 经过身份验证的用户的监视列表

    TotalCount Integer 集合中的结果总数。可以大于返回结果的数量。
    Page Integer 当前结果页的索引(从 1 开始)。
    PageSize Integer 当前页面中的结果数。
    List Collection of or null 当前页面中的结果列表。
    ListingId 长整数 商家信息的 ID。
    BidCount 整数 项目的出价数量。

更多 API 规范参考**检索您的监视列表 ** 。

  • 示例请求

GET https://api.tmsandbox.co.nz/v1/MyTradeMe/Watchlist/All.JSON

  • 示例响应

{
  "TotalCount": 1,
  "Page": 1,
  "PageSize": 1,
  "List": [
    {
      "ListingId": 2149294406,
      "Title": "11x Assorted T-Handle Hex Allen Keys",
      "Category": "5964-5999-6004-9825-",
      "StartPrice": 1.0000,
      "StartDate": "\/Date(1626749989730)\/",
      "EndDate": "\/Date(1626922789730)\/",
      "ListingLength": null,
      "AsAt": "\/Date(1626855531548)\/",
      "CategoryPath": "\/Building-renovation\/Tools\/Hand-tools\/Sets-kits",
      "PictureHref": "https:\/\/images.tmsandbox.co.nz\/photoserver\/thumb\/8152697.jpg",
      "PhotoId": 8152697,
      "RegionId": 16,
      "Region": "Canterbury",
      "Suburb": "Christchurch City",
      "Note": "",
      "NoteDate": "\/Date(0)\/",
      "CategoryName": "Sets & kits",
      "Attributes": [
        
      ],
      "Subtitle": "SKYLARC’S WINDFLOW TECHNOLOGY ONLINE AUCTION",
      "MinimumNextBidAmount": 1.0000,
      "IsOnWatchList": true,
      "PriceDisplay": "$1.00",
      "AdditionalData": {
        "BulletPoints": [
          
        ],
        "Tags": [
          
        ]
      },
      "IsDealer": false,
      "IsLeading": false,
      "IsOutbid": false,
      "IsInCart": false,
      "MemberBidShippingOption": 0
    }
  ],
  "FoundCategories": [
    {
      "Count": 1,
      "Category": "5964-",
      "Name": "Building & renovation",
      "CategoryId": 5964
    }
  ]
}

业务介绍

  • 前端页面 - 进入关注列表页面

登录 > Watchlist > View Watchlist

img

  • 前端页面 - 关注列表页面

img

  • 业务范围选择

查询监视列表中的项目。

  • 业务验证点

检查监视列表中是否存在项目。

API测试脚本调试

  • 在 Postman 的 Authorization 标签中选择 OAuth 1.0 对请求进行授权。

OAuth 1.0 是针对发送前需要授权的交易。模板如下:

img

基于 API 规范,参数 - All表示返回监视列表中的所有项目。

所以请求应该是 GET https://api.tmsandbox.co.nz/v1/MyTradeMe/Watchlist/All.JSON

img

  • API连通性

连通性测试通过,得到观察列表没有项目的响应示例。

{
    "TotalCount": 0,
    "Page": 1,
    "PageSize": 0,
    "List": [],
    "FoundCategories": []
}

连通性测试通过并得到观察列表有项目的响应示例。

{
    "TotalCount": 1,
    "Page": 1,
    "PageSize": 1,
    "List": [
        {
            "ListingId": 2149294806,
            "Title": "Digitus DK-330301-00",
            "Category": "0002-4250-4256-",
            "StartPrice": 0,
            "BuyNowPrice": 37.31,
            "StartDate": "/Date(1626835762520)/",
            "EndDate": "/Date(1627440562520)/",
            "ListingLength": null,
            "AsAt": "/Date(1627290227336)/",
            "CategoryPath": "/Computers/Cables-adaptors/Other",
            "PictureHref": "https://images.tmsandbox.co.nz/photoserver/thumb/8240722.jpg",
            "PhotoId": 8240722,
            "IsNew": true,
            "RegionId": 2,
            "Region": "Auckland",
            "Suburb": "Waitakere",
            "HasBuyNow": true,
            "Note": "",
            "NoteDate": "/Date(0)/",
            "CategoryName": "Other",
            "ReserveState": 3,
            "Attributes": [],
            "IsBuyNowOnly": true,
            "IsOnWatchList": true,
            "PriceDisplay": "$37.31 per item",
            "AdditionalData": {
                "BulletPoints": [],
                "Tags": []
            },
            "IsDealer": false,
            "IsLeading": false,
            "IsOutbid": false,
            "IsInCart": false,
            "MemberBidShippingOption": 0
        }
    ],
    "FoundCategories": [
        {
            "Count": 1,
            "Category": "0002-",
            "Name": "Computers",
            "CategoryId": 2
        }
    ]
}
  • API检查点

我们可以从连通性测试响应中知道 TotalCount >= 0。

然后我们根据示例功能得到下面的检查代码片段。

pm.test("Checking if there are any items in the watch list", function () {

    console.log("Post-Transaction: CheckingtheCountsofWatchList Start");

    var jsonData = pm.response.json();

    var TotalCount = jsonData.TotalCount;  

    if (TotalCount >= 0){

        console.log("Found " + TotalCount +" item on the watch list");

        console.log("Post-Transaction: CheckingtheCountsofWatchList Pass");

    }

    else{

        console.log("Post-Transaction: CheckingtheCountsofWatchList Failed");

    }
    
});

运行脚本以从控制台日志验证检查点是否正常工作。

img

img

API 测试脚本增强

增强脚本,如添加事务功能、异常验证、参数化等。

运行最终脚本并从前端页面或控制台日志进行验证。

API测试脚本发布

当我们完成 API 正面和反面案例时,将脚本从调试文件夹移动到公共文件夹。

然后等待使用 CICD 工具与其他脚本结合发布到 GitHub 特定存储库。

版权

本作品采用 CC BY-NC-ND 4.0 授权。