restful api 一般怎么测试?

2016-02-24 20:37:02 +08:00
 herozem

今天写了点 API ,但是测试的时候是自己手动对着数据,然后分别测试 get/post/delete/put ,然后看有没有出错。

有没有更高效的测试方法?

以及自动化?求教

7893 次点击
所在节点    Python
17 条回复
ahxxm
2016-02-24 20:40:39 +08:00
先把需求写成测试就好了
herozem
2016-02-24 21:30:15 +08:00
@ahxxm 不懂,能说详细点吗?如果光是调用函数倒是挺简单的,但是要保证比如 PUT 修改了某数据,要验证最后一定修改了。不知道要怎么比较方便高效的写测试。
ipconfiger
2016-02-24 21:37:29 +08:00
没有银弹, 不要想着省力, 任何偷懒的想法只会换来更大的坑
zyx89513
2016-02-24 21:41:16 +08:00
codeception.com 我用的这个, 有专门的 rest 测试模块
jarlyyn
2016-02-24 21:42:14 +08:00
写单元测试?

api 的一大有点不就是适合做单元测试么?
janxin
2016-02-24 21:50:02 +08:00
事实上我用单元测试形式做过,也用 requests 直接手撸过

工具的话 pyresttest 这样描述性的也 ok
haozhang
2016-02-24 21:52:55 +08:00
以先测试功能函数,然后做 mock 测试,最后模拟 UA 测试。在调试的时候可以用 postman 这个 chrome 插件。
yuetsh
2016-02-24 22:03:17 +08:00
rest console tool
zhangneww
2016-02-24 22:05:07 +08:00
postman +1
herozem
2016-02-24 23:17:20 +08:00
@haozhang
@zhangneww 嗯,我也在用 postman ,不过每次都要对着每一个 get/post 过一遍,还是有些错误会漏掉。
@yuetsh 看了一下好像和 postman 差不多。
@janxin
@jarlyyn 要想准确的话好像只能写单元测试了,每次输入指定的数据,然后对其发起 get,post 等操作,对比结果,然后吧它们删了
@zyx89513 我用的是 Python ~_~还不会 php
thomaspaine
2016-02-24 23:57:28 +08:00
@herozem swagger ?或者 RAML?
最理想的情况是接口文档写好了,测试例子在里面,然后调用工具直接测试
darluc
2016-02-25 00:02:34 +08:00
mocha + chai
darluc
2016-02-25 00:03:44 +08:00
frisby ?
stellar
2016-02-25 09:27:22 +08:00
postman 或者 jmeter
fwee
2016-02-25 10:22:21 +08:00
安利个简单易用自动化的 https://github.com/jjyr/zerotest
bullettrain1433
2016-02-25 16:13:34 +08:00
jmeter
domwang
2017-12-25 14:50:47 +08:00
很多 REST Client 是不支持自动化测试 RESTful API,也不支持自动生成 API 文档.
WisdomTool REST Client,支持自动化测试 RESTful API,输出精美的测试报告,并且自动生成精美的 RESTful API 文档。
轻量级的工具,功能却很精悍哦!
https://github.com/wisdomtool/rest-client

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/258869

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX