1、方案一
方案概述
- 每个图商(GD、BD、自建)拆分成单独的类
把参数化的几个图商类别拆分成对应的图商类,在每个类中不进行参数化设置,直接在构造函数处指定唯一的图商类型。
最后我们再组成一个测试套件,把各个模块、类中的高德部分case统一执行
方案分析
首先原有结构是 一个testcase 在 4个类型 跑一遍,所以在代码里必须 用if-else区分不同情况,当map_type不同时,进入到不同的断言分支中
我们想要拆分,符合高德的一类、符合百度的一类,自建的一类,在一种地图参数下,
(1) 把对应图商地图的逻辑给分离开
最简单的办法:把baseMap类中对应的高德逻辑 case 单独拆出来,放到一个类中。
把MapCarema类中对应的高德case查出来,放到一个类中。…
最后搞成一个测试套件,高德的 suitCase 一块执行。
(2) 要使用命令行的方式执行方法
最简单的方式就是,拆成一个独立的类,所有的方法只传递一个参数。
拆分成 TestBaseMapGD、 TestCaremaGD等类,GD测试套件类包含GD的几个类,使用AndroidTest命令行 执行测试套件类即可
2、方案二
分类测试也是一种办法:
补充,查阅资料有一种分类测试用例的方法,正在试一试,可以把方法按照类别进行分类执行测试,但是还得考虑一下参数的问题,还在试一下使用
![[图片]](/https://i-blog.csdnimg.cn/blog_migrate/2f4d02f20b549e6fbbc72dd4b4f05ee8.png)
https://blog.csdn.net/anxuecui5012/article/details/101125601
使用了一个分组demo后,发现和实现效果不太一致,还得是参数化的方式,无法通过命令行单独起一类地图Map_Type 的case用例。
3、最终决定
方案一,最简单的直接拆分。去除参数化,修改部分case逻辑。
文章讨论了两种优化地图测试的方案:方案一通过逻辑分离和命令行执行简化测试;方案二尝试分类测试但遇到参数问题。最终选择方案一,避免参数化,便于命令行执行测试套件。

1077

被折叠的 条评论
为什么被折叠?



