重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要讲解了“微信小程序单元测试的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“微信小程序单元测试的方法是什么”吧!
在内丘等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、网站建设 网站设计制作按需求定制网站,公司网站建设,企业网站建设,成都品牌网站建设,成都全网营销,外贸网站制作,内丘网站建设费用合理。
程序设计,实现之后的下一个环节就是单元测试了。对于位置闹铃小程序来讲,带着设备到处移动以测试监控点的状态迁移就是一个必经之路,但是如果所有环节都通过实地测试来解决,那将耗费大量的时间和体力。
我们的选择是,在实地测试之前,用尽量少地代价做好单元测试。
测试对象
我们的测试对象是上一篇文章中说明的监控点状态迁移逻辑,也就是上面序列图右下角的enterAlarmCheck函数。这个函数可以说是这个小程序地核心。它的调用关系如下。
系统调用index的onTimer函数(实际上是一个无名函数)。
onTimer函数调用app的checkAlarms函数。
checkAlarm函数调用app的checkAlarmsImpl函数
checkAlarmsImpl调用util.getLocation函数取得现在的位置信息。
checkAlarmsImpl取得每个监控点alarm并用getLocation取得的位置信息调用alarm的checkLocation方法
alarm的checkLocation方法调用getDistance方法取得现在位置到监控点的距离。
alarm的enterAlarmCheck根据最新的距离信息进行状态迁移处理。
测试方法
其他的都好说,这里唯一的测试难点就是位置变化,我们采用了最为简单粗暴地方式:直接修改alarm的getDistance方法。
getDistance: function (latitude, longitude) {
var test =
[800, 700, 600, 500, 400, 300, 200, 100,
90, 80, 70, 60, 50, 40, 52, 43, 53, 81, 101,
201, 301, 401, 501, 502, 403, 304, 204, 105,
96, 87, 78, 69, 50, 41, 42, 43, 54, 89, 100,
110, 123, 145, 156]
if(this.testIndex < test.length){
return test[this.testIndex++]
}else{
return 0
}
//return util.getDistance(this.latitude, this.longitude, latitude, longitude)
},
函数的本来功能已经被屏蔽掉,直接修改为每次返回数组中的数字。通过修改数组的内容我们可以模拟各种运动情况。
也许你觉得修改uitl.getLocation函数也是一种方式,但是它有两个问题:一是这个函数有可能在其他地方被调用,二是生成的数据必须是经纬度,很麻烦。
其实getDistance这个函数就是为了单元测试才设计出来的。
单元测试是个技术活。
感谢各位的阅读,以上就是“微信小程序单元测试的方法是什么”的内容了,经过本文的学习后,相信大家对微信小程序单元测试的方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!