背景
对于一个Tester来说,转Coder是一件非常困的事情,原因:前端与后端的交互,前端与前端的交互,后台端与后端的交互,甚至费解写不出来一行代码,那种场景的理解可能与我们在做测试所谓的交互不一样,从测试思维去做开发在这方面有一定的局限性,感觉思维像被固化了一般!
做了两个星期的web平台开发,一个特别简单的功能,jsp页面,删除一行,我竟然用了两天时间,原因:不理解前,后交互的原理,救助搜索引擎时使用的关键词不匹配....
我的理解
前端删除就可以了,删除了就不会提交到后台了,
实践结果
jsp页面选择删除行,点击‘删除’按钮,确实可以从前台删除,但依旧提交到了后台;
后台又开始搜索,ajax table删除与后端交互看了N个实例都一知半解还是失败了,主要框架实现太多了实例都不太完整。
第二次实践
在ajax中把选择框的值传给后台id,可以删除成功,原因:第一个选择框的Id为1,在数据库的id也为1,SQL语句执行成功,测试通过
but当我再次删除行时,提示失败:后台日志执行的sql是 :delete from table where id (1),传过来的id不存在,原因:Id1已经被删除
这个方案算是成功了一半吧
第三次实践
百度搜索的一个结果让我恍然大悟,‘后台删除,前台刷新’,一个思路胜于一大堆代码。
1.jsp页面把隐式id的值,传给checkbox value
2.通过ajax传给controller,执行删除操作,刷新列表
3.jsp选择删除行,点击‘删除’,提示确认删除,删除成功且刷新页面
实践成功!!
理解比盲目的实践重要,开始理解了coder为什么那么不容易了...