1.简介
客户端访问缓存地图服务时,是按屏幕范围请求缓存,一屏由多张缓存图片组成,每个缓存图片对应一个请求。因此需要将一屏内的所有请求作为整体来测试。
可以通过访问缓存地图服务的REST地址,使用HTTP调试工具(如:Fiddler、Firebug)捕获一屏下的所有Web请求。再使用HTTP调试工具提供的导出HAR文件功能,该文件包含了捕获的所有请求信息。System Test支持通过导入HAR文件来创建Web测试。
2.使用Fiddler导出HTTP HAR文件
2.1.启动Fiddler监听Web请求
Fiddler是以代理服务器的方式工作,启动Fiddler时会自动将浏览器设置成代理方式,代理地址:127.0.0.1,端口:8888。
2.2.导出HAR文件
选择所有请求,使用菜单File-->Export Sessions-->Selected Sessions功能,选择导出1.2版本的HAR文件。
需要注意的是,默认导出的HAR文件导入到System Test时,是将所有的Web请求作为一次事务来测试。由于本测试只针对缓存服务访问,可以只选择缓存服务访问请求导出成HAR文件。
3.System Test中新建测试工程
同前文。
4.新建Web测试
(1)导入HAR文件
使用导入HAR文件方式创建Web测试。右键选择Web tests-->Import an HTTP Archive,导入前面导出的HAR文件。
(2)同时输入测试名称
导入完成,会在Web Tests下创建请求。
(3)删除无关的请求
由于本次测试只针对缓存服务访问,需要将非缓存服务访问的请求删除。也可以在fiddler中只导出缓存服务访问请求。
5.创建负载测试
(1)新建负载测试
右键选择TileMap-china-->Create Load Test。
(2)设置负载参数
设置负载参数和GIS Server节点信息你。建议不使用思考时间,同时设置刷新时间间隔为10秒。
6.执行测试
选择Load Tests下创建的TiledChinaMap,使用工具栏上的Start Load Test开始执行测试。执行完成会自动生成Excel报告。
7.https方式访问地图服务的性能测试
7.1.Fiddler HTTPS请求访问设置
默认情况下,Fiddler不会记录HTTPS请求URL地址的详细信息。这样导出的HAR文件未包含完整的请求地址,会导致System Test访问失败。Fiddler中需要做额外配置才可以记录完整https访问地址信息。
(1)配置HTTPS
打开Fiddler Tools菜单下的Fiddler Options。勾选上如图的选项,再导出证书到桌面,并安装到浏览器中。
(2)测试
在浏览器中使用HTTPS访问地图服务的REST地址,测试fiddler捕获的情况。
7.2.System Tests中使用https访问的地图服务
(1)导入含https请求的HAR文件
在Web Tests下导入HAR文件。
(2)执行测试
参考资料:
[1] System Test帮助
[2] 如何用fiddler捕获https请求