1.在我的工作经历中,有一些尴尬的前端业务场景,大概有以下几种情况需要等待后台童鞋配合我的地方:a.我们跟外部项目合作,需要调用第三方接口。一般这种情况下,业务方谈好合同,走完流程,等待第三方审核,我们就直接开始开发,但此时没有对外接口可以使用;或合同已谈妥,但第三方对接人员尚未排定。简而言之,您需要等待。b.活动抢节点上线时间紧迫的节点(比如七夕、双十一)需要开发,前后端同时开发,后端还没有开发,接口可以被调试。C。需要调用的接口非常复杂。本来只需要一个简单的返回,但是由于各种历史原因和业务细分,需要间接调用N个不同的复杂接口,导致工作量非常大,耗时很多,但价值不大。这个时候我更倾向于选择mock,在联调的时候把它弄粗,然后进入测试阶段,让测试的同学把问题暴露给我(测试童鞋请原谅我偷懒哈哈).现在前端mocking的软件很多,大家挑适合自己的就好。其实mock工具满足的需求都是类似的。关键是能够模拟一些业务场景中的具体细节,细节减少你花在重复性事情上的时间。我个人现在用的是apifox(www.apifox.cn)。与之相比,优点是可以模拟更真实的业务数据,不需要我做二次调整。细节上省下来的时间,如果每天仔细算一算,还有一两个小时,省下的时间就是早点下班的时间。我只会在这里写一些我尝试过的在Apifox上模拟数据的省时技巧。2、省时提效tips1:常用的返回参数封装成数据模型,使用时直接填入即可。例如,对于一个音乐软件,最常用的返回数据可能是歌手数据和歌曲数据。歌手数据包括:歌手头像、歌手姓名、性别、50首流行歌曲等;歌曲数据包括:歌曲名称、大小、歌曲链接、专辑封面、歌手、歌词文件等。如果每次设置返回值都需要重复设置以上字段,会比较麻烦和耗时。这时候可以把常用的参数封装成一个数据类型,在填写返回值的时候直接填写,这样返回接口的时候就可以返回对应的字段。tips2:数据采用高仿真数据,避免数据类型和显示相关bug。在我造假数据之前,我有时会忽略格式,只填写数字或几个汉字。这样很容易造成不必要的错误。一是返回的数据会有格式校验,不匹配就会报错。这时候再回去修改是浪费时间;其次,不符合数据结构的显示也可能导致异常。如果此数据用于以后的处理将阻止程序的正常运行。其他软件用得不是很仔细,就不细说了。如果你使用apifox软件模拟数据,它提供了很多常用的数据类型来填充返回的数据类型。在创建数据时,您可以根据您的业务类型创建更多的模拟数据。生成数据实际上是麻烦且耗时的。普通的比如中文名字就可以了。如果我想创建URL、邮政编码、十六进制颜色值、域名和ID号,我通常必须搜索数据规则来创建它们。一般我在软件完成返回参数后进一步选择某类数据,apifox会自动生成符合相应数据结构要求的数据。可以支持基本的文本,身份证,ip地址,url等数据也可以模仿。例如:我在返回值中设置了如下数据类型:返回值数据如下,能用的“真”数据就出来了。tips3:在boundary场景下,“sign”调试apifox的接口提供了一个高级的mock功能:当用户在请求参数中填写的值满足特定条件时,接口会返回一个特定的值。我一般用这个函数来测试边界场景,比如设置请求参数的值为none,让接口返回空值;或者测试某个字段的UI表现在各种长度下是否正常。tips4:错误码使用枚举类型,兼容调试异常场景。另外,有时候我们的前端需要对后端返回的错误码进行兼容处理或者给用户相关的提示。在调试此功能时,我有一个技巧,即使用响应参数设置中的高级设置。将错误代码填写为枚举值。测试后端返回不同错误码类型时,前端是否有相应的反馈。tips5:设置业务约束,在mock数据上提供更准确的返回值。除了数据类型本身的约束外,还有业务上的约束。有时候虽然返回的数据类型是我们想要的,符合数据格式,但不一定符合我们实际的业务场景。示例:某曲库中只有50000张专辑,但是将专辑的返回值设置为整数,可能会导致返回值超过曲库ID的上限,返回异常值。但是我需要返回一些东西来执行进一步的操作,我需要它正常返回。此时可以进入高级设置,设置返回值的取值范围,使返回的数据能够满足我们的调试需求。这些虽然都是小功能点,但是在实际业务中确实可以为你节省很多时间。目前我只用到apifox这个软件的mock功能,所以就先分享这么多,接下来再分享其他可以提高效率,省时省力的小技巧。如果要下载,可以直接去他们的官网www.apifox.cn,软件还是免费的,下载使用即可。
