限 时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410
API 测试用例是什么?
在互联网大行其道的今天,身为一名电商平台的程序员,必定经常与 HTTP API 打交道,一个常见的情况便是做 API 测试。抛开可以用单元测试代替的,很多时候需要真地发出 HTTP 请求才行。这些负责发出 HTTP 请求的东西可能是一行curl命令,可能是一个.js文件,也可能是一个在 中点击按钮的操作,但不管形态如何,它们便是 API 测试用例。尽管名字中带有“用例”二字,但很多时候是由人来校验结果的,用例更关注发出怎样的 HTTP 请求。
为什么要管理它们?
不同于每天在浏览器中发生成千上万次的、平凡的 HTTP(或 HTTPS)请求,API 测试用例是值得一番精心管理的.org文件,因为:
API 测试用例通常会重复使用,因此必须将它们持久化保存。也许是保存成 shell 脚本,也许是保存成脚本语言源文件,也许是保存为某一款软件的数据文件;需要为多个 API 编写测试用例,因此必须区分不同的 API 对应的测试用例。例如,负责管理业务资源的服务(比如一个管理商品数据的、提供 API 的服务),起码需要提供增删查改的功能,那么也就需要有增删查改对应的 API 测试用例;需要为多个服务的 API 编写用例,因此必须区分不同的服务对应的测试用例集。例如,既然有商品服务,那么极可能还有订单服务、优惠券服务、物流服务,等等,每个服务又都有增删查改的功能,这些不同服务的 API 也需要各自的测试用例;需要区分不同的运行环境。通常本地、开发、测试,以及生产环境是互相隔离的,一个用例中的参数往往不能照搬到另一个环境中。
API、服务,以及环境这三个维度上的区别,使得测试用例的数量显著增加,如不进行管理,当要用时,要么不得不从零开始再写一遍脚本,要么得翻查很久才能找到所需的用例。
用 org-mode 管理org-mode 是什么?
org-mode是一款 Emacs 编辑器的扩展,它让使用者能够用快速高效的纯文本方式来记笔记、维护待办事项、安排计划,以及编写文档。org-mode的精髓在于它的大纲组织能力,以及依托于 Emacs 的扩展能力.org文件,两者使其正好可以胜任管理 API 测试用例的工作。一个.org文件的示例如下图所示
org-mode官网的示例截图
如何用 org-mode 管理 API 测试用例?
尽管org-mode提供了丰富的功能,但只是管理 API 测试用例的话,并用不上太多花里胡哨的东西,只需要org-mode的大纲功能和org-babel特性即可。
首先用不同的.org文件区分不同的环境。
接着用不同层级的 区分不同的服务、资源类型,以及 API。
然后用org-mode的代码块[1]语法来编写 HTTP 请求。以请求为例
#+BEGIN_SRC restclient
GET https://httpbin.org/uuid
#+END_SRC
#+和#+分别表示开启和结束代码块,表示这个代码块内的代码可以用 Emacs 的-mode来编辑。在代码块中,GET 表示以 GET 方法请求。
安装了“[2]后,将光标定位在代码块上并按下ctrl-c ',可以进入一个单独的 编辑其中的源代码
最后,如果配置了org-babel,甚至可以直接在代码块上按下ctrl-c ctrl-c来发出 HTTP 请求。
限 时 特 惠: 本站每日持续稳定更新内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: muyang-0410