06 接口测试平台:工具和框架不可以兼容?

简介: 06 接口测试平台:工具和框架不可以兼容?

工具有便捷性,框架有灵活性,正确地混合使用它们,实质上就可以搭建起一个接口测试平台,帮你更快速地完成测试任务。两个好处。
一是能充分发挥 Postman 界面化的优势,快速完成大量的脚本撰写工作;二是通过你自己 的框架完成测试脚本的执行,所有的过程代码都会存储到你自己的代码仓,这样,既可以留 下测试的过程资产,也便于版本控制,这也为持续集成、持续交付等平台提供了无人值守 的、按需驱动测试的途径。

通过工具和框架搭建接口测试平台,其实就是一个很好的解决方案。这样,你既可以让你的 团队有技术积累,又能给团队中一些编码能力比较薄弱的小伙伴学习时间,最重要的一点是,这不会影响整个工作的进度。
选择第一个单接口接口测试的脚本,在右侧点击 Code 按 钮。在弹出框中,你可以选择各式各样技术栈的测试脚本,在这里,我们还是用在之前例子中所 选取的 Python,我们框架的依赖库是 Requests,这样你就可以看到显示出的代码了。如下图所示。看到这些代码,你是不是已经开始觉得,通过这样的处理来编写脚本更加容 易。由此可见,和写代码相比,使用 Postman 来设计接口测试要更容易使用,对于代码基础比 较薄弱的测试工程师来说,这种方法也更容易掌握。框架的灵活性亦可得。


现在,我们一起看一看由工具生成的代码。先来看看第一个接口首页单接口对应的代码:


import requestsurl = "http://127.0.0.1:12356"headers ={  'cache-control': "no-cache",  'Postman-Token': "8c6247bb-744a-43d3-b27d-9e51af923c5d"}response = requests.request("GET", url, headers=headers)print(response.text)


上面的这个代码你是不是似曾相识?这就和我们第一次写的第一个接口的单接口测试代码一 样,是一个流水账一样的脚本,这些代码如果原模原样地存到你的代码仓中,对你再次使用它没什么好处。那么在这基础上,我们可以将它修改成自己框架的脚本,就如下面这段代码 所示:


# 引入你的框架from common import Common#访问uriuri_index = "/"#调用你的Common类comm = Common('http://127.0.0.1:12356')# 完成方法response_login = comm.get(uri_index)# 打印response结果print('Response内容:' + response_login.text)

这个代码你是不是很亲切?Common 类可是我们的老朋友了。那么接下来,我们再看看第 二个接口登录的单接口测试脚本,你可以用相同的方法,找到它的 Python 代码,为了方便 有些不是很方便打开自己 Postman 的同学,我把对应的代码放到了下面:


import requests
url = "http://127.0.0.1:12356/login"payload = "username=criss&password=criss"headers = {'cache-control': "no-cache",'Postman-Token': "fdc805e1-4406-4191-ae44-ab002e475e03" }
response = requests.request("POST", url, data=payload, headers=headers)print(response.text)

我们在上面代码的基 础上,将其修改成引入我们自己框架的测试代码,完成修改后,再推送到接口测试项目的代 码仓中,就如下面这个代码所示:


from common import Commonuri = "/login"payload = "username=criss&password=criss"comm = Common('http://127.0.0.1:12356')response_login = comm.post(uri_login,params=payload)print('Response内容:' + response_login.text)


以 Postman 工具和你自己的框架相结合的例子,告诉你如何建立一个你自己的测试 平台,你可以通过三步完成工具加框架的组合方式:

  • 借助 Postman 这类工具的易学、易操作的特点,将它变成你测试脚本中快速创建的脚本 撰写工具;
  • 利用工具提供的导出代码功能,将其导出成我们流程化的测试代码;
  • 通过我们自己的框架,改写我们通过工具导出的脚本。


最后,你的测试脚本可以存入代码仓中为持续集成平台提供持续验证,这就完成了一套简单又灵活的接口测试平台的建设!

相关文章
|
13天前
|
敏捷开发 Java 测试技术
探索软件测试中的自动化测试框架
在软件开发的生命周期中,软件测试扮演着至关重要的角色。随着技术的不断进步和软件项目的日益复杂化,传统的手动测试方法已经无法满足高效、准确的测试需求。自动化测试作为一种提高测试效率和质量的有效手段,越来越受到开发者和测试者的青睐。本文将深入探讨自动化测试框架的重要性、常见的自动化测试工具以及如何选择合适的自动化测试框架。
37 10
|
15天前
|
设计模式 前端开发 JavaScript
自动化测试框架设计原则与最佳实践####
本文深入探讨了构建高效、可维护的自动化测试框架的核心原则与策略,旨在为软件测试工程师提供一套系统性的方法指南。通过分析常见误区,结合行业案例,阐述了如何根据项目特性定制自动化策略,优化测试流程,提升测试覆盖率与执行效率。 ####
41 6
|
15天前
|
人工智能 前端开发 测试技术
探索软件测试中的自动化框架选择与优化策略####
本文深入剖析了当前主流的自动化测试框架,通过对比分析各自的优势、局限性及适用场景,为读者提供了一套系统性的选择与优化指南。文章首先概述了自动化测试的重要性及其在软件开发生命周期中的位置,接着逐一探讨了Selenium、Appium、Cypress等热门框架的特点,并通过实际案例展示了如何根据项目需求灵活选用与配置框架,以提升测试效率和质量。最后,文章还分享了若干最佳实践和未来趋势预测,旨在帮助测试工程师更好地应对复杂多变的测试环境。 ####
40 4
|
14天前
|
监控 jenkins 测试技术
自动化测试框架的构建与实践
【10月更文挑战第40天】在软件开发周期中,测试环节扮演着至关重要的角色。本文将引导你了解如何构建一个高效的自动化测试框架,并深入探讨其设计原则、实现方法及维护策略。通过实际代码示例和清晰的步骤说明,我们将一起探索如何确保软件质量,同时提升开发效率。
34 1
|
9天前
|
JavaScript 安全 编译器
TypeScript 与 Jest 测试框架的结合使用,从 TypeScript 的测试需求出发,介绍了 Jest 的特点及其与 TypeScript 结合的优势,详细讲解了基本测试步骤、常见测试场景及异步操作测试方法
本文深入探讨了 TypeScript 与 Jest 测试框架的结合使用,从 TypeScript 的测试需求出发,介绍了 Jest 的特点及其与 TypeScript 结合的优势,详细讲解了基本测试步骤、常见测试场景及异步操作测试方法,并通过实际案例展示了其在项目中的应用效果,旨在提升代码质量和开发效率。
29 6
|
5天前
|
机器学习/深度学习 人工智能 Java
探索软件测试中的自动化框架选择与优化策略####
本文深入探讨了在软件测试领域,面对众多自动化测试框架时,如何根据项目特性、团队技能及长远规划做出最佳选择,并进一步阐述了优化这些框架以提升测试效率与质量的策略。通过对比分析主流自动化测试框架的优劣,结合具体案例,本文旨在为测试团队提供一套实用的框架选型与优化指南。 ####
|
5天前
|
敏捷开发 前端开发 Java
软件测试中的自动化测试框架选择与实践
在当今软件开发生命周期中,自动化测试已成为提升软件质量和开发效率的关键手段。本文旨在探讨自动化测试框架的选择标准及其在实际项目中的应用实践。通过对主流自动化测试框架的分析比较,结合具体案例,本文将阐述如何根据项目需求和团队特点选择合适的自动化测试工具,并分享实施过程中的经验教训。
14 1
|
12天前
|
人工智能 供应链 安全
AI辅助安全测试案例某电商-供应链平台平台安全漏洞
【11月更文挑战第13天】该案例介绍了一家电商供应链平台如何利用AI技术进行全面的安全测试,包括网络、应用和数据安全层面,发现了多个潜在漏洞,并采取了有效的修复措施,提升了平台的整体安全性。
|
16天前
|
安全 网络协议 关系型数据库
最好用的17个渗透测试工具
渗透测试是安全人员为防止恶意黑客利用系统漏洞而进行的操作。本文介绍了17款业内常用的渗透测试工具,涵盖网络发现、无线评估、Web应用测试、SQL注入等多个领域,包括Nmap、Aircrack-ng、Burp Suite、OWASP ZAP等,既有免费开源工具,也有付费专业软件,适用于不同需求的安全专家。
34 2
|
16天前
|
监控 网络协议 Java
一些适合性能测试脚本编写和维护的工具
一些适合性能测试脚本编写和维护的工具