精简开发流程,高效调用API,程序员的必修课分享;

通过商品ID获取商品数据通常涉及使用电商平台的API接口,需要发送请求并处理返回的JSON或XML格式数据。API测试包括验证功能、输入输出、数据更新和安全性等方面,常用工具有Postman、JMeter等,测试过程中需关注错误处理和性能问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要通过商品id获取商品数据,一般需要使用相应电商平台的API接口。其中包括传递商品id的参数和相应的请求头信息。具体实现步骤如下:

  1. 首先,需要在电商平台中获取商品id。

  2. 然后,根据电商平台提供的API接口,使用GET或POST等请求方式向平台发送请求,传递商品id等参数和请求头信息。

  3. 通过请求接口,获取到后端返回的商品数据。常见的数据格式包括JSON、XML等,通过解析数据格式将商品数据解析出来,可以获取价格、销量、库存、图片等信息。

  4. 读取商品数据,一般可使用Python等编程语言中的相应库进行数据的读取和处理,将商品数据存储到数据库中或者输出到Excel等格式的文件中。同时,在数据读取和处理的过程中,需要注意编码格式和数据的清洗,以保证数据的准确性和完整性。

总之,要通过商品id获取商品数据,需要熟悉电商平台的API接口调用方式和数据格式,同时需要一定的编程能力和数据处理经验。

必修课目录

1、什么是API?

2、什么是API测试

3、API测试的测试用例:

4、API测试方法:

5、如何进行API测试

6、API测试的最佳做法:

7、API测试检测到的错误类型

8、API测试工具

9、API测试的挑战

10、结论:

在进行API测试之前,我们先了解一下

1、什么是API?
API(全称Application Programming Interface)是两个单独的软件系统之间的通信和数据交换。实现API的软件系统包含可以由另一个软件系统执行的功能/子例程。

2、什么是API测试
API测试是一种用于验证API(应用程序编程接口)的软件测试类型。它与GUI测试非常不同,主要集中在软件体系结构的业务逻辑层。在API测试中,您无需使用标准的用户输入(键盘)和输出,而是使用软件将调用发送到API,获取输出并记下系统的响应。

API测试需要可以通过API进行交互的应用程序。为了测试API,您需要

使用测试工具调用API

名称类型必须描述
keyString调用key(请求测试
secretString调用密钥
api_nameStringAPI接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]
cacheString[yes,no]默认yes,将调用缓存的数据,速度比较快
result_typeString[json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读
langString[cn,en,ru]翻译语言,默认cn简体中文
versionStringAPI版本

编写自己的代码调用API         

props": [
        {
          "name": "品牌",
          "value": "三刃木"
        },
        {
          "name": "产地",
          "value": "中国"
        },
        {
          "name": "颜色分类",
          "value": "长方形带开瓶器+送工具刀卡+链子,椭圆形带开瓶器+送工具刀卡+链子,GJ018X钥匙刀+送工具刀卡+链子,超凡大师套餐【送工具卡+链子】,最强王者套餐【送工具卡+链子】,璀璨钻石套餐【送工具卡+链子】"
        },
        {
          "name": "吊牌价",
          "value": "46"
        },
        {
          "name": "功能数量",
          "value": "5个及以下"
        },
        {
          "name": "货号",
          "value": "GJ019C"
        },
        {
          "name": "附加功能",
          "value": "开瓶器,刀,螺丝刀,钥匙圈,其他"
        }
      ],
      "total_sold": "1",
      "skus": {
        "sku": [
          {
            "price": "39",
            "orginal_price": "39.00",
            "properties": "1627207:1347647754",
            "properties_name": "1627207:1347647754:颜色分类:长方形带开瓶器+送工具刀卡+链子",
            "quantity": "104",
            "sku_id": "3166598625985"
          },
          {
            "price": "39",
            "orginal_price": "39.00",
            "properties": "1627207:1347647753",
            "properties_name": "1627207:1347647753:颜色分类:椭圆形带开瓶器+送工具刀卡+链子",
            "quantity": "370",
            "sku_id": "3166598625984"
          },
          {
            "price": "25.8",
            "orginal_price": "25.80",
            "properties": "1627207:1195392087",
            "properties_name": "1627207:1195392087:颜色分类:GJ018X钥匙刀+送工具刀卡+链子",
            "quantity": "34",
            "sku_id": "3144644292458"
          },
          {
            "price": "73.8",
            "orginal_price": "73.80",
            "properties": "1627207:1331112595",
            "properties_name": "1627207:1331112595:颜色分类:超凡大师套餐【送工具卡+链子】",
            "quantity": "157",
            "sku_id": "3161300228970"
          },
          {
            "price": "91.8",
            "orginal_price": "91.80",
            "properties": "1627207:1331112594",
            "properties_name": "1627207:1331112594:颜色分类:最强王者套餐【送工具卡+链子】",
            "quantity": "0",
            "sku_id": "3161300228969"
          },
          {
            "price": "63.8",
            "orginal_price": "63.80",
            "properties": "1627207:1331264247",
            "properties_name": "1627207:1331264247:颜色分类:璀璨钻石套餐【送工具卡+链子】",
            "quantity": "167",
            "sku_id": "3161107666655"
          }
        ]

    

3、API测试的测试用例:
API测试的测试用例基于

基于输入条件的返回值:相对容易测试,因为可以定义输入并可以验证结果

不返回任何内容:没有返回值时,将检查系统上的API行为

触发其他一些API /事件/中断:如果API的输出触发了某些事件或中断,则应跟踪这些事件和中断侦听器

更新数据结构:更新数据结构将对系统产生某些结果或影响,应进行身份验证

修改某些资源:如果API调用修改了某些资源,则应通过访问相应资源来对其进行验证

4、API测试方法:
以下几点可帮助用户进行API测试:

了解API程序的功能并明确定义程序范围

应用诸如等效类,边界值分析和错误猜测之类的测试技术,并为API编写测试用例

API的输入参数需要适当计划和定义

执行测试用例,并比较预期结果和实际结果。

API测试和单元测试之间的区别

5、如何进行API测试
API测试应至少涵盖除常规SDLC流程以外的以下测试方法:

发现测试:测试组应手动执行API中记录的一组调用,例如验证是否可以列出,创建和删除API公开的特定资源。

可用性测试:此测试可验证API是否功能正常且用户友好。API是否也可以与其他平台很好地集成

安全测试:此测试包括需要哪种身份验证以及是否通过HTTP加密敏感数据或同时通过这两种方法对敏感数据进行加密

自动化测试:API测试应以创建一组脚本或可用于定期执行API的工具为最终结果

文档:测试团队必须确保文档足够,并提供足够的信息来与API交互。文档应成为最终交付成果的一部分

                    
6、API测试的最佳做法:
测试用例应按测试类别分组

在每个测试的顶部,您应包括被调用的API的声明。

测试用例中应明确提及参数选择

确定API函数调用的优先级,以便测试人员轻松进行测试

每个测试用例应尽可能独立且独立于依赖项

在开发中避免“测试链”

处理诸如-Delete,CloseWindow等一次性调用函数时必须格外小心。

呼叫排序应执行且计划合理

为了确保完整的测试范围,请为API的所有可能的输入组合创建测试用例。

7、API测试检测到的错误类型
无法优雅地处理错误情况

未使用的标志

功能缺失或重复

可靠性问题。难以连接API并从API获得响应。

安全问题

多线程问题

性能问题。API响应时间非常高。

错误的错误/警告呼叫者

对有效参数值的错误处理

响应数据的结构不正确(JSON或XML)

8、API测试工具
由于API和单元测试都是目标源代码,因此可以使用工具/框架进行自动化。

jmeter

postwomen

Parasoft SOAtest

Runscope

Postman

Curl

Eclipse SDK tool- Automated API testing

9、API测试的挑战
API测试的挑战包括:

Web API测试中的主要挑战是参数组合,参数选择和调用排序

没有可用于测试应用程序的 GUI ,这很难提供输入值

对测试人员而言,在不同系统中验证和验证输出几乎没有困难

测试人员必须知道参数的选择和分类

异常处理功能需要测试

测试人员必须具备编码知识

10、结论:
API由代表业务逻辑层的一组类/函数/过程组成。如果未正确测试API,则可能不仅会导致API应用程序出现问题,还会导致调用应用程序出现问题。它是软件工程中必不可少的测试。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值