什么是 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 函数直接读取。
相应代码:
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。