API 功能
检索经过身份验证的用户监视列表中的项目列表。
API - 检索您的监视列表脚本开发步骤
API规范->业务展示->API测试脚本调试->API测试脚本增强->API测试脚本反向案例扩展->API测试脚本发布
API规范
-
关键请求字段
-
关键响应字段 - 经过身份验证的用户的监视列表。
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
-
前端页面 - 关注列表页面
-
业务范围选择
查询监视列表中的项目。
-
业务验证点
检查监视列表中是否存在项目。
API测试脚本调试
-
在 Postman 的 Authorization 标签中选择 OAuth 1.0 对请求进行授权。
OAuth 1.0 是针对发送前需要授权的交易。模板如下:
-
组装获取请求 -检索您的监视列表
基于 API 规范,参数 - All表示返回监视列表中的所有项目。
所以请求应该是 GET https://api.tmsandbox.co.nz/v1/MyTradeMe/Watchlist/All.JSON
-
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");
}
});
运行脚本以从控制台日志验证检查点是否正常工作。
API 测试脚本增强
增强脚本,如添加事务功能、异常验证、参数化等。
运行最终脚本并从前端页面或控制台日志进行验证。
API测试脚本发布
当我们完成 API 正面和反面案例时,将脚本从调试文件夹移动到公共文件夹。
然后等待使用 CICD 工具与其他脚本结合发布到 GitHub 特定存储库。