在上次的自动化测试系列(一)中为大家大体介绍了自动化测试的概念,本文次要针对 API 测试的概念及 API 测试在 Choerodon 猪齿鱼中的实际开展。
API(应用程序编程接口)测试是一种软件测试,能够间接在 API 级别执行验证。它是集成测试的一部分,它确定 API 是否满足测试人员对性能,可靠性,性能和安全性的冀望。与 UI 测试不同,API 测试是在没有 GUI 的音讯层执行的。
什么是 API 测试
接口(API)是各种零碎性能的根底,一旦接口呈现问题可能会引起许多零碎性能的问题并且不容易定位。而接口测试则帮忙节俭了测试老本,促成了测试前移。如图所示,在软件的自动化测试金字塔中,越是底层的测试,越是可能提前发现 Bug,而在底层发现的这些 Bug 造成的影响往往也会更大。所以,咱们提倡测试前移,也就是说,在金字塔中层级越低,占的比重应该更大。(然而在理论工作中,单元测试对技术专业性要求更高,很多状况下都是由开发来施行,因而咱们能够先抉择接口测试来更早地染指测试。)
其次,接口测试相较于传统的功能测试,接口测试可能更好地解决零碎测试的复杂度问题,同时防止了 UI 层可能不稳固的问题,以此来进步测试人员的工作效率。
通过将 API 测试工作集成至利用流水线,Choerodon 平台实现了接口测试的自动化。
怎么应用 Choerodon API 测试性能?
本次旨在为大家介绍在 Choerodon 猪齿鱼 V0.24.0 商业版中 API 测试相干的性能。
API 测试用例治理
Choerodon 中的接口测试模块通过集成 Jmeter,实现了 API 用例的增加、归集、治理与执行的性能。其中反对基于接口 URL 或 Swagger 文档疾速编排接口测试用例,而导入或增加 API 测试用例的整个过程免代码编写,技术门槛低,适宜麻利团队中各个角色应用。
- 创立 API 测试用例
API 测试用例次要由 4 个局部组成,别离是:用例的根底信息、前置步骤、申请脚本以及断言。
- 前置步骤用于为执行用例申请做前置筹备,分为:前置申请、生成随机数据、前置期待 3 种类型。
- 申请脚本中蕴含了:抉择申请形式、保护 URL、保护申请头、申请参数或申请体,同时还能从对应的响应后果中提取出变量供后续的用例援用。
- 断言用于对用例执行后的响应后果做判断,判断申请执行后的响应后果是否满足咱们的预期。若满足,则称之为:通过断言;不满足,则为:不满足断言;
- 导入 API 测试用例
导入用例
的性能反对将已有的接口及其相干信息批量疾速地导入到用例库中,并主动生成符合规范的 API 测试用例。目前反对 Swagger 导入用例
与cURL 导入用例
形式。
Swagger 导入用例
反对输出 Swagger URL 从 Swagger 中批量导入 API 测试文档中曾经保护的接口信息。
cURL 导入用例
反对从浏览器(如 chrome、safari)中复制申请为 cURL 格局,并将其粘贴进图中的命令行中即可。
- 执行 API 测试用例
执行 API 测试用例时,需抉择 API 测试用例,并反对抉择 API 测试工作 - 工作配置
页面曾经保护好的工作配置,同时反对在此基础上进行批改,或者间接输出各项配置。
执行配置中设置的参数反对用于此次执行的所有用例,防止反复屡次的保护雷同的用例信息。
API 测试工作
API 测试工作是某些特定用例的汇合(这里能够是产品的某个版本中的 API 测试用例,或者是其中某个功能块的 API 测试用例的汇合);从 API 测试用例库中抉择用例创立 API 测试工作胜利后,便能以 API 测试工作为整体来执行该工作。此外,利用流水线中也集成了 API 测试工作,从而实现了 API 测试的自动化执行。
- 创立 API 测试工作
创立 API 测试工作时,需抉择 API 测试用例,作为 API 测试工作中执行的对象。反对抉择 API 测试工作 - 工作配置
页面曾经保护好的工作配置,同时反对在此基础上进行批改,或者间接输出各项配置作为此工作的通用配置。
工作配置中设置的参数反对用于 API 测试工作中执行的用例,防止反复屡次的保护雷同的用例信息。
- API 测试工作记录
API 测试工作
菜单下,可查看所有 API 测试工作
的执行记录,除此之外,还反对查看间接通过执行用例而产生的 用例执行
的记录。
测试记录中蕴含了两局部,别离是:执行概览与执行后果详情;
1. 执行概览:其中包含记录的编号、执行后果、执行者、开始工夫、执行耗时、用例通过率、执行胜利的用例数、执行失败的用例数。2. 执行后果详情:即每个用例的执行详情查看;其中包含:用例申请的根本信息(申请形式、URL)、用例执行状态、开始工夫、执行耗时、断言的通过状况、申请头、申请体、状态码、响应头以及响应体。
- 工作配置管理
工作配置用于为执行用例或执行 API 测试工作提供根底的配置,其中包含:全局申请头配置、全局申请配置、受权治理配置以及用户变量配置,以此来防止在多个用例中频繁反复地配置这些参数。
- 流水线中集成 API 测试工作
流水线中 API 测试工作
目前仅反对 Choerodon 商业版能抉择。当 API 测试工作触发后,会立即执行选中的测试工作。
留神:该类型的 CD 工作仅 Choerodon 商业版可用。
- 抉择增加此类型工作后,首先须要填写工作名称、配置触发分支;触发分支的匹配形式反对:分支类型匹配、正则匹配、准确匹配以及准确排除。
- 抉择 API 测试工作:此处仅反对抉择我的项目下已有的 API 测试工作。
总结
继续测试是 DevOps 流程中重要的一环,而 API 测试能帮忙实现测试前移,从而帮忙团队升高测试老本,更快地发现缺点与问题。
对于猪齿鱼
Choerodon 猪齿鱼作为开源全价值链多云麻利合作平台,是基于开源技术的 Kubernetes,Istio,knative,Gitlab,Spring Cloud 来实现本地和云端环境的集成,实现企业多云 / 混合云应用环境的一致性。平台通过提供精益麻利,继续交付,容器环境,微服务,DevOps 等能力来帮忙组织团队来实现软件的生命周期治理,从而转变,更代替地交付更稳固的软件。
更多内容
大家能够通过以下社区路径理解 Choerodon 猪齿鱼文档,最新动静,产品个性:
【Choerodon 官网】
https://choerodon.io/zh/
【汉得开放平台】
https://open.hand-china.com/
【汉得凋谢论坛】
https://openforum.hand-china.com/
也能够退出 Choerodon 猪齿鱼官网社区用户交换群,交换猪齿鱼应用心得,Docker,微服务,K8S,麻利治理等相干实践实际心得,群同步更新版本更新等信息,大家能够加群探讨交换。
①-Choerodon 猪齿鱼官网交换(已满);
②-Choerodon 猪齿鱼官网交换(可加);【微信号发至客服邮箱 choerodon@vip.hand-china.com,经营小伙伴拉您入官网交换群】
欢送退出 Choerodon 猪齿鱼社区,独特为企业数字化服务打造一个凋谢的生态平台。