接口发送 xml 格式的数据如何测试?

707 篇文章 25 订阅
645 篇文章 0 订阅
XML是一种用于传输和存储数据的语言,与HTML不同,它的重点在于数据而非展示。尽管现在JSON更常用于接口数据传递,因它更简洁和易解析,但XML在某些场景如UI页面和特定领域仍有优势。Postman等工具可用于测试XML接口,Python的requests库也可支持XML数据发送。文章还提及了XML与JSON的数据结构差异,并提供了测试XML接口的代码示例,以及软件测试的学习资源和面试资料。
摘要由CSDN通过智能技术生成

什么是 xml ?

xml 是一种和 html 非常类似的语言,采取一定的格式展示数据。比如:

这个例子非常形象的指明:

  • 这是一个便条

  • 便条是给你的

  • 便条是我写的

  • 标题是:提醒

  • 内容是:今晚八点,不见不散

xml 和 html 的区别

  • xml 设计的初衷在于传输数据,重点在数据;

  • html 设计的初衷在于展示数据,重点在展示;

  • html 通过和 css 的组合能展现非常美观的效果,xml 志不在此。

接口当中为什么会有 xml ?

xml 的作用和 json 实在是太像了。通过 json, 可以代替 xml 的作用:

以前,接口通常会采用 xml 来传输数据。而现在,大多数接口都是采用 json 进行数据传递, xml 已经被冷落了,主要的原因是:

  • json 数据传输量较小,xml 常常要使用各种属性,冗余信息较多;

  • json 支持数字, 布尔, null, 数组,对象等通用格式,xml 都是文本;

  • json 解析更方便

但是,还是有一些公司的接口是采用 xml, 比如大名鼎鼎的微信,很多接口还是采用 xml。原因是 xml 在一些特定领域还占有一些优势:

  • 可读性稍微占优势;

  • 对于 UI 页面,可以更方便的使用属性这样一种形态进行页面数据的传输,比如

    安卓应用。

  • 历史优势。xml 相比 json 发展更早,还有很多有经验的程序员偏爱 xml, Java

    程序员有喜欢 xml 的倾向(现在已经很少了)。微信的很多 api 还是用 xml,

    也许是出于这些原因。

xml 和 json 的区别,归根结底在于他们表达数据的方式不同,xml 用的是树形结构, json 对应的是 hash 映射。

使用工具测试 xml 数据接口

接口发送 xml 格式的数据和发送 json 几乎一样,只需要把格式改成 xml 就可以了。

采用 postman 接口测试工具 往接口https://httpbin.org/post 发送以下 xml 数据:

postman 数据填写:

通过 fiddler 抓包可以查看到发送的数据:

通过 postman 查看返回结果:

通过上面的例子得出:

  • xml 格式的发送只需要修改请求头格式

  • 请求头格式为 Content-Type: application/xml

使用 python 编程语言测试 xml 数据接口

使用 python 语言的 requests 库可以很方便的发送 xml 格式的数据,只需要把请求头格式换成 application/xml 就可以了:

xml 数据存储在文件当中

测试数据如果不是通过在代码中直接传递,而是通过文件形式存储,则使用 python 当中的 open 函数直接读取。

相应代码:

最后: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取【保证100%免费】

在这里插入图片描述

 这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

软件测试技术交流群社:786229024(里面还有工作内推机会,毕竟我们是关系社会。)

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

面试文档获取方式:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值