/g`Y?E8Ny0 淘宝地图提供通过地图的方式查找周边的宝贝和本地商户,方便用户快速准确的购买到身边的宝贝,是LBS模式的真实体验。51Testing软件测试网4l9TV y qK
I"CF
rXTo9E
UW F&`0 在做淘宝地图的测试时,在网上搜索了相关资料,发现地图测试的信息很是贫乏,遂总结了一下地图的测试方法,以和大家分享,如有总结错误,欢迎大家指正。
ei%L
H.N051Testing软件测试网pGQ)sU 地图组件可以在应用中嵌入一张地图的静态图片,或者是一张有交互功能的地图,使用者可以通过接口对地图添加内容,并在地图上进行各种交互。51Testing软件测试网$V D2I Te4{(T6mm/k
`
51Testing软件测试网n3V@+{gEz
@_ z 几乎所有的主流互联网地图服务商都对外发布了接口,供第三方使用,一般是是有JavaScript语言编写。51Testing软件测试网a:}"^c"Dz*Sf;~%e
ABv"tyT+ro0 1、操作方式51Testing软件测试网*R_zh5Af
-|"PY"x0i.Faa_0 地图作为一张页面,其页面交互不是很复杂,没有很多页面的跳转。51Testing软件测试网hs0Q,g;xc.mz4O!r
Rq5q _9Z+pLjK0 拖动和缩放是地图上常见的操作方式,在地图的拖动和缩放过程中,往往伴随着数据的变化,如poi的变化、宝贝的变化,这里需要根据业务逻辑进行测试用例设计。
cW&\\QB0|a05gZ4D'Z7G,F&{B5B0 在淘宝地图中,为了使用户更为方便的找到自己心仪的宝贝,并且准确的定位到该宝贝的位置,所以在进行地图缩放时,页面上散落的信息点不会变化。而在用户进行拖动时,会采用异步刷新的方式,重新获取宝贝和商户的信息。
y,q^wR$wk0:~9G+a
k]7O!F'{V0 测试总结:要结合自己的业务需求,进行关于地图操作的用例设计,注意缩放和拖动地图时数据的变化。51Testing软件测试网U;jH7W{+CDo
2W8{~)I5HB-cvf0 2、参数组合
3e!}\+{8ov:[ h051Testing软件测试网-N4g$w/A2d1h{
S 地图是一种信息展现的载体,而地图上的信息是用户通过设置各个条件综合筛选。通过对各个场景对应的参数测试,来确保用户获取的信息正确性。51Testing软件测试网O\E/b2w%Y
51Testing软件测试网PCey4DSpV7z 在淘宝地图中,参数有:关键字、城市、类目、视野、页数。在不同的场景切换时,要注意重点测试参数是否需要传递或者处理为默认值。在淘宝地图开发中,开发同学经常容易忽视这样的逻辑。
UNuB@Xh$V0mry1CF7T0 以下是淘宝地图中各个操作对应的参数传递:
8P E9|$b!^
\051Testing软件测试网 LD}`u;m6J
| 搜索 | 类目切换 | 拖动 | 城市切换 | 快速选择 | 翻页 |
关键字 kwd | YES | YES | YES | NO | NO | YES |
类目 cat | NO | YES | YES | NO | NO | YES |
页数 page | NO | NO | NO | NO | NO | YES |
视野 lat&lng | YES | YES | YES | NO | YES | YES |
城市city | YES | YES | YES | YES | YES | YES |
| ae"a9w9Op0 | 51Testing软件测试网*s_kc#}/d%t`:_
| 51Testing软件测试网K9{1_v5}
| 2c JiFb0 | 51Testing软件测试网v{ M_e(iL
| 51Testing软件测试网"r[/b1u{tvtmVr
|
注释:行为参数,列为操作。51Testing软件测试网3ym6`_&?MT2CC
测试总结:关注参数组合逻辑,和场景切换时的参数传递。可以通过在用例设计时完成这一块逻辑的覆盖,通过二维图来展现是个不错的主意。
g%g{1E"E0 3、同步异步请求
oYwteA}O
H![0 对于地图页面上的操作,很多情况下采用异步请求的方式(为了不让页面发生重载和刷新)。如拖动地图、类目切换时时,地图上信息点的展现。51Testing软件测试网6fM,p};nFY
对于异步查询,可以通过拼接参数的形式进行http请求,验证数据接口返回结果的正确性,然后在前端上验证页面上的展现及样式。51Testing软件测试网,t)t]'`:r1F
测试总结:分层测试设计,验证数据接口和前端展现。
zQ
s:T:VQYN5@W'^aY0 4、坐标、视野、弹出气泡51Testing软件测试网W
x8`\
xT}
地图上视野通过比例尺来控制,信息点的坐标通过后端数据返回给js,弹出气泡通过js控制,气泡内的信息通过异步请求的方式获取。51Testing软件测试网~9qK
p mI8q(O
测试时注意验证数据的正确性。
0~y%R;HA$J'Wk~0 5、性能测试51Testing软件测试网LW%G7I8]&H
由于地图上的页面元素较少,地图区通过js调用地图组件的接口,所以前端页面的性能不会有太大的问题。性能测试的重点是在底层数据和服务上。51Testing软件测试网/m@7{0gB2P0u'i
淘宝地图的数据源来自vsearch(宝贝信息)和kingso(本地商户信息)搜索引擎,对于这两个搜索引擎的性能测试非常重要。在测试执行期间,发
现vsearch的响应时间很慢,导致地图上信息气泡弹出时反应很慢。通过vsearch同学的性能调优,解决了该问题。51Testing软件测试网y.J9s3L6e3U4tF
测试总结:在对引擎进行压测时,可以采用两种方案。方案A:对服务端进行压测。由于服务端是对vsearch和kingso请求进行了一次封装,并加入
我们自己的业务逻辑,所以对服务端进行压测更能体现系统的性能。方案B:直接对引擎进行压测。在对服务端压测后若出现性能指标不理想的情况,就需要对引擎
进行单独压测,以确定性能瓶颈点。
be\Y%t0