和我配合的后端写完从来不自测(大概 10 个接口 6 7 个不能一次通的),然后都是前端调试的时候,有问题然后和他说下。 每次都要前端页面上点击发个请求然后后端断点调试,一次两次倒还好,每次都是这种操作 而且还要点好几次,不知道是不会用 postman 还是懒 真的感觉很蠢这种方式联调。
1
HongJay 2019-12-04 11:23:46 +08:00
可能不好构建参数吧
|
2
shehuizhuyi 2019-12-04 11:24:27 +08:00 1
postman
|
3
lifesimple OP |
4
1O 2019-12-04 11:25:38 +08:00
|
5
b821025551b 2019-12-04 11:26:36 +08:00
就是懒呗
|
6
lifesimple OP @HongJay #1 不是,参数复杂的我可以把参数给他
|
7
shuang 2019-12-04 11:27:09 +08:00
开会时提出来
|
8
cxe2v 2019-12-04 11:27:42 +08:00
单元测试啊,自己构建参数啊,就算不好构建参数,你前端做好后,提交给他,他自己点击自己测啊,为什么会需要前后端配后操作
|
9
wangkun025 2019-12-04 11:29:13 +08:00
跟 leader 提议详细记录开发的过程。
如果调试时间太长,而且过程很繁琐,自然会有人发飙。 我是按时间拿工资的,真好 |
10
sliwey 2019-12-04 11:30:59 +08:00
有一说一 不是懒就是菜 多反馈反馈 碰到过挺多这样的后端的
|
11
kangmang92 2019-12-04 11:37:47 +08:00
@1O 咦 跟 man 啥区别
|
12
ty89 2019-12-04 11:41:20 +08:00
写接口的单元测试啊,这还要人肉发请求,重构岂不是要累死
|
13
hyy1995 2019-12-04 11:45:09 +08:00
比较菜的后端就这样的了。。。我也遇到过
|
14
Caballarii 2019-12-04 11:48:01 +08:00
9102 年了,这么基本的 swagger 了解一下
|
15
dswyzx 2019-12-04 11:51:57 +08:00
@kangmang92 完全开源.号称功能强一点
|
16
loongwang 2019-12-04 11:52:38 +08:00
我很多都不测.. 主要是这个接口需要很多前置条件,自己构建很麻烦, 等着前端调就不用管那些前置条件了.
|
17
chickenJuicer 2019-12-04 11:54:51 +08:00
必须自测好才给前端, 我认为这是一个合格的后端的基本素质...
|
18
randyo 2019-12-04 11:57:16 +08:00 via Android
反正我叫后端给我参数格式,我调接口就按照这个格式传,报错?关我啥事,自己看去。
|
19
arthas2234 2019-12-04 11:59:07 +08:00
后端怎么可能不知道要怎么测试,就是懒
|
20
f056917 2019-12-04 11:59:26 +08:00
遇到过好几次,我直接跟后端说能不能自测过了再给我,你得说,不然就变成你帮他们测试了
|
21
test3207 2019-12-04 12:02:26 +08:00
写单测啊,然后没有单测条件 Postman 也行。天天人肉联调你看我不打爆这 sd 的狗头。
解决问题的话,自己写假数据保证任务完成,延期不背锅;先找当事人反映,最多你前端本地跑让他自己调。不改的话再往部门领导反映。不管的话就准备找下家呗。 |
22
opengps 2019-12-04 12:15:05 +08:00 via Android
一次性能通过 3-4 成似乎挺厉害,不过自己不会测试就很菜了
|
23
luozic 2019-12-04 12:19:50 +08:00 via iPhone
spring contracts ; swagger ; postman ;实际就是懒和甩锅。
|
24
slyang5 2019-12-04 12:44:58 +08:00
@lifesimple 这后端合作真难啊 😁
|
25
kylinC 2019-12-04 12:49:09 +08:00
postman 单元测试
|
26
Hurriance 2019-12-04 12:55:40 +08:00 via iPhone
约定好返回数据格式,后端自己的接口肯定要自测的啊
|
27
wangkun025 2019-12-04 13:02:11 +08:00
@f056917 把后端打死算了
|
28
inrenping 2019-12-04 13:22:24 +08:00
|
29
SjwNo1 2019-12-04 13:22:51 +08:00 3
个别前端连传参都传不对的,后端有抱怨? 有情绪和他沟通不就好了 。。。
|
30
1O 2019-12-04 13:23:57 +08:00
@kangmang92 API request builder - A free, fast, and beautiful alternative to Postman
|
31
limingjie138 2019-12-04 13:28:26 +08:00
上家是 postman,刚入职这家项目是 swagger 搞定,现在特么的连 service 都不用写,可重用性拉满= = 想写错都难。不测接口的后端不只懒,他肯定没干过全菜(误);
|
32
scukmh 2019-12-04 13:30:26 +08:00
个别前端连传参都传不对的,后端有抱怨? 有情绪和他沟通不就好了 。。。
|
33
xingheng 2019-12-04 13:34:49 +08:00 via iPhone
不用 Postman 调试,怕不是连 ut 也没有
|
34
robot1 2019-12-04 13:42:03 +08:00
质量这么低可以向上级投诉啊,开会的时候反应啊 还有打断点这种调试方式完全不适合后端,应该具备完整的日志。
|
35
darknoll 2019-12-04 13:47:04 +08:00
可能是 cookie 啥的,嫌麻烦
|
36
ylsc633 2019-12-04 13:47:25 +08:00
数据不对 所以就需要联调
请求不通 后端可能测了,也可能没测 比如 他自己用 postman 请求是 ok 了. .可是忘记前端需要跨域,所以都不通了.. 比如 他以为 这个参数是从 url 里取的, 结果前端是从 header 里传的. 导致不一致.. |
37
fatpower 2019-12-04 13:51:42 +08:00
和他领导反馈
|
38
uxstone 2019-12-04 13:56:20 +08:00
蠢 懒 坏
|
39
DT37 2019-12-04 14:02:14 +08:00
果然我菜,我一般 postman 测试过的,前端测试不过,哎,参数太复杂就让前端人肉了
|
40
passerbytiny 2019-12-04 14:08:33 +08:00
既不是不会用,也不是懒,而是:若你们的开发流程中没有单元测试环节,那么有过经验的人,是不会自找麻烦的去主动做的。
PS:通常,单元测试的时间至少是编码时间的一倍。 |
41
OSF2E 2019-12-04 14:09:50 +08:00
先不考虑网络异常、业务异常等问题,先在客户端(前端)把完整的数据交互流程完整开发出来,涉及数据请求的地方,先用假数据或者利用客户端本地数据库模拟一套数据管理系统以及相关接口,也就是模拟实现一套数据持久层与请求层。如果是网页应用,可以用 indexdDB,其它平台则推荐 sqlite。
前一步完成之后,再在基础的数据交互场景之上穷举所有可能要处理的非核心业务的数据交互场景,并整理接口文档。 后端根据文档开发接口,严格按前端的要求来。 总之就是一句话,房子要从下往上建,而不能从楼顶开始。 |
42
DT37 2019-12-04 14:09:57 +08:00
每次前端跟我调试都很有情绪,整的我也很有情绪,可烦跟我们前端调试的,现在能我处理的数据我都自己搞定.
带有情绪的调试很影响合作的.一定是我太菜.你们说的都对,我占了三条,蠢懒菜.不接受任何反驳.做的多错的多,做的多错的多 |
43
DT37 2019-12-04 14:13:12 +08:00
@OSF2E 说的很有道理 自下而上,我想着自下而上,但是前端不听,跟着他的自上而下,又不行.要么后端配合前端,要么前端配合后端,总要为主的人,但是偏偏我们前端是以她为主业务不对,以我为主她每次讨论带有情绪,我很烦很烦
|
44
imycc 2019-12-04 14:16:17 +08:00
接口自测不通过是不能够交付的。这种事情遇到多了就跟对方老大反馈
|
45
redford42 2019-12-04 14:18:44 +08:00
教教他 postman
|
46
toma77 2019-12-04 14:20:45 +08:00
大部分后端写好直接给前端,出现问题他们再去看
|
47
DT37 2019-12-04 14:22:18 +08:00
一般牛逼的前端,都可以找到后台哪里出问题的,而不是觉得后台接口调试总是报错,一般牛逼的前端都可以很好的处理菜鸡后端传来的数据,一般牛逼的前端.......这才是问题点,除非两个人都菜
|
48
fengpan567 2019-12-04 14:24:05 +08:00
postman
|
49
f056917 2019-12-04 14:29:37 +08:00
@wangkun025 自己写的东西不能用也不自测就给别人还不能说了?这么傲娇做什么后端啊,去做公主啊
|
50
cmonkey 2019-12-04 14:30:33 +08:00
单元测试
|
51
OSF2E 2019-12-04 14:30:49 +08:00
@DT37 所以公司的技术(面试)负责人对前端工作的认知很重要……前端开发者应当既懂 UI 设计,也要懂软件开发,方才能把开发流程串起来。
|
52
mnssbe 2019-12-04 14:31:02 +08:00
后端太水
|
54
DT37 2019-12-04 14:47:04 +08:00
@f056917
我的观点如下,在调试这种合作过程中双方需要保持理智客观(合作时的信任),先不论后端是否是菜懒坏.我觉得都有必要把前端出现的问题反馈给后台,包括问清什么不用测试工具测试(导致每次需要前端调用看日志找问题),减少没有沟通产生的误会,才是解决问题的良方. 而不是想着后台的懒菜水.如果你反馈回去后台置之不理,耽误前端工作需要反馈给上级或者开会时说明,此时没必要信任后台(直接开怼). ps:我是已经不太愿意跟我们前端调试接口,因为只要产生分歧问题,前端都会带有很强的情绪在里面.发生过很多次我也强调过,但是还是不改,我就开启了开怼模式. 请赐我一个牛逼的前端被怼我也毫无怨言只要他很牛逼. 来自一枚菜鸟后台的回复看到这个问题感触很多情绪很复杂 |
55
wangkun025 2019-12-04 14:48:13 +08:00
@f056917 大哥,被误会,我是友军
|
56
wangyzj 2019-12-04 14:51:37 +08:00
YApi 接入 ci
|
57
f056917 2019-12-04 14:58:32 +08:00
@wangkun025 [捂脸]
|
58
deletemyself 2019-12-04 15:00:33 +08:00
测通是基本,但是有的就只示意接口名、参数等,返回字段也没有文档就坑了。。。用的时候就靠猜和问。。问还不一定及时回复。。。
|
59
f056917 2019-12-04 15:01:32 +08:00
@DT37 主要还是沟通问题,如果后端给的接口没有自测到前端这儿直接 504,还是连着三四个接口都这样,哪个前端都有情绪。反过来后端给的数据前端就想拿来直接用不想二次处理,那肯定前端也有问题
|
60
lifesimple OP @DT37 #54 没有开怼,只是吐槽,槽点在
1. 写完接口 自己不 mock 或者数据库捞一些数据 来自测 2. 接口不通,传参没问题,我把参数给后端。后端联调总是需要前端手动点击页面触发请求,这个事情完全可以通过 postman 或者其他方式来操作,这种情况如果我不在的情况,就变成我前端阻塞他后端调试后端接口,很滑稽。 |
61
f056917 2019-12-04 15:09:06 +08:00
@lifesimple 表示小公司经常这样干
|
62
lifesimple OP @DT37 #54 昨天晚上我早走了,走之前和他说过接口报错(请求参数没问题),然后他昨晚这接口就没调。
|
63
DT37 2019-12-04 15:10:09 +08:00
@f056917 是的沟通问题.但是这个世界上林子大什么鸟都有,不是每个人都能很好的意识到需要良好的沟通.
后面二次处理数据这个也要看后台跟前端关系好不好了,好的话后台处理不方便,前端可以处理掉,前端不方便的后台帮忙处理掉,互惠互利双赢对吧,如果关系不好话就头疼了,突然心疼自己 |
64
DT37 2019-12-04 15:11:25 +08:00
@lifesimple 那就是后台的问题了说了还不改就很烦人,这不耽误工作嘛
|
65
luckyrayyy 2019-12-04 15:13:37 +08:00
@1O 这个笑死我了...
|
66
xuanbg 2019-12-04 15:15:04 +08:00
Paw 实在是太好用了,比 Postman 好用太多了。唯一的缺点是要花钱买
|
67
Hanggi 2019-12-04 15:26:42 +08:00
不写测试吗?
|
68
Varobjs 2019-12-04 15:46:00 +08:00
不写单测的太多了,包括我自己(我也想写,但是太耗时了)
另外,不写单测,不一定代表接口就不好,开发的时候总要想到尽可能多地情况吧,总得自己模拟看有没有问题吧? 上面有人说了,单测只是重构的时候,特别方便且安全写! |
69
yEhwG10ZJa83067x 2019-12-04 15:46:50 +08:00
就我使用 postwoman 的吗
https://postwoman.io/ |
71
securityCoding 2019-12-04 15:56:10 +08:00
swagger 导入到 yaip 里面去 , 测试用例可以保存起来,多棒啊
|
72
laimeifeng1995 2019-12-04 15:56:15 +08:00
提测接口呀,难道你们公司没有接口测试的嘛。。。
|
73
pangleon 2019-12-04 15:56:20 +08:00
就是懒加菜,没别的解释,没的洗
|
74
jintianfengda 2019-12-04 15:57:51 +08:00
讲道理我不测个完整通透我都不好意思给前端联调,生怕他找到 bug
|
75
gaius 2019-12-04 15:59:57 +08:00
idea 自带.http 插件的比 postman 好用点,可以传 git
|
76
Erroad 2019-12-04 16:01:22 +08:00
你这个后端就是懒,除非请求特别复杂,不然一定首先自测全流程。接口层面来说,太复杂的让前端构造一次,自己拷贝个 curl,import 到 postman 自己慢慢调。
复杂的函数自己写完直接上单元测试 |
77
zjsxwc 2019-12-04 16:08:48 +08:00
|
78
rumingruyue 2019-12-04 16:15:17 +08:00
后端自测是最起码的专业素养,自己开发完,最正常的案例都要进行测试。
如果是 HTTP 请求可以用 PostMan 也可用 CURL 如果是 Dubbo 接口,直接 telnet 或者用公司的其他工具。 正常情况下除了正常数据还要测试异常数据。 解决问题一般都是要看错误日志的,很难排查的情况下才 Debug。 主要还是个人追求和习惯问题。 这个你可以跟他反映下,如果以后总这样,不听跟他领导说,让他以后先自测好再联调。 |
79
wysnylc 2019-12-04 16:23:07 +08:00
接口不通就认为接口无效打回重写
|
80
akakidz 2019-12-04 16:28:41 +08:00
|
81
wawehi 2019-12-04 16:31:49 +08:00
要分情况看吧,一般的 HTTP 接口可以自测,但如果是有状态的 SOCKET 服务,就不一定了,可能前置条件太复杂,比如多人在线游戏要测试,需要先构建登录认证、进入频道或房间、再释放技能或执行某操作,此时可能还需要其它虚拟玩家配合,这样搞下来,测一个接口的时间成本很高
以前为了测接口和流程, 用 FLASH 写一个简版 APP,这样可以多开 N 个,再来模拟和测试各种情况,完事再把接口交给客户端 还有一种做法是直接用 py 写个命令行的应用程序来模拟各种操作,但是逻辑复杂的时候确实很麻烦 不管哪种方式,要完整测试都有相当的工作量。 工期紧张时一般保证核心算法和存储这些的单元测试,其它的就在连调中解决了。 |
82
wsseo 2019-12-04 16:33:53 +08:00
我觉得最难的是前后端都不校验参数值。
借楼问一下有没有比较现代的 api 文档工具? |
83
zhifSu 2019-12-04 16:38:05 +08:00
我们的前端只负责静态页面~
|
84
xman99 2019-12-04 16:40:17 +08:00
一般我会使用 postman 自己调试下, 然后添加到接口文档, 把必要的参数说明了。qq 跟对接同事说下
|
85
lifesimple OP @xman99 #84 对啊 这样就很舒服
|
86
sytnishizuiai 2019-12-04 16:50:16 +08:00
写接口文档-》写代码-》测试-》完善文档,补充返回值
|
87
LtOl66 2019-12-04 16:50:20 +08:00
一般是将各种出现的情况,罗列出来然后一种情况一种情况的测试,自测完然后就提测。
|
88
Leigg 2019-12-04 17:15:59 +08:00 via Android
多数是后端自己要保证接口质量,但是有些接口后端没办法自测需要前端配合调试,比如 wx.login
|
89
Cihua 2019-12-04 17:20:47 +08:00
多数还是可以自测的..
但是目前比如我这边,一个请求进来先经过网关层认证一部分参数,然后经过权限认证服务,经过 A 业务服务,然后调用 B 业务服务....类似于这种的依赖多个服务的接口..或者没有开发服务环境的时候.可能需要前端配合人肉测试接口...但是一般会和前端沟通下配合测一下.... |
90
Egfly 2019-12-04 17:28:54 +08:00
就是懒、蠢!!!
1、前端对接时根据接口文档来,保证前端提交参数与接口文档一致就行。开发完之后发布一个 release 版本,然后交由测试进行测试。 2、测试发现 bug 之后,先确认是后端 bug 还是前端 bug。 3、如果是后端 bug,让后端自己打开网页复现(复现流程,测试描述清楚),然后修复,最后测试验收。 > 其实正常后端开发完接口,写好文档之后,测试要先进行接口测试的 所以后端的问题为什么要占用前端的时间? |
91
srx1982 2019-12-04 17:30:44 +08:00
上 swagger,省的调了
|
92
KentY 2019-12-04 17:34:20 +08:00
swagger 的页面有 bug, 单击了 try it 以后, cpu 会飙升, 然后取消, 又恢复.
说到工具, 我没找到比 insomnia 更好的. |
93
wiken 2019-12-04 17:37:58 +08:00
后端一般都是用 postman 之类的来调试接口.前后端面向文档编程就好了,这种联调不能接受,接口返回跟文档不符合,直接报 bug
|
94
Caijl 2019-12-04 17:38:59 +08:00
跟技术没关,关乎做人。
|
95
SmiteChow 2019-12-04 17:48:25 +08:00
接口视图层只能做序列号、反序列化,业务代码必须封装为 service,而 service 必须用 ut 覆盖。从楼主描述来看,同事必然是将 service 写到了 view 中,导致只能通过调 api 进行测试。
|
96
ForPy 2019-12-04 18:04:08 +08:00
是我 Python requests 装逼的时刻到了
|
97
zuokanyunqishi 2019-12-04 18:08:02 +08:00 via Android
单元测试
|
98
ihavecat 2019-12-04 18:20:18 +08:00
postwoman
|
99
jzbax1230 2019-12-04 18:20:19 +08:00
yapi swagger postman
|
100
balabalaguguji 2019-12-04 18:30:48 +08:00
写接口文档,然后自己接口测试: https://easydoc.top
|