1.简介
客户端应用使用动态地图服务的查询功能,实际上调用的是动态地图服务的Query操作。本示例主要测试Query操作性能。
2.创建测试工程并添加GIS Server服务
同ExportMap性能测试。
3.创建测试数据
3.1.加载服务并设置测试范围
在GIS服务中选择测试的地图服务,如SampleWorldCities,将地图服务添加到地图中。
再使用工具栏上的Envelope工具,在地图上画出测试的数据范围。
3.2.设置查询图层
使用工具栏上的Query工具,定义查询图层与查询名称。
查询条件定义完成会自动在DataSoruce下增加<layername>.csv节点。csv文件记录了图层所有属性值。
4.创建Web测试
4.1.新建web测试
右键选择Web tests-->New。
4.2.新建Transaction
展开Web Tests,右键选择新建的QueryCitiesTest-->Add Transaction。
如果需要考虑思考时间,在Think Time中设置思考时长。
4.3.新建Request
右键选择新建的TransQuery-->Add Request。输入完整的Query查询地址。如:
http://portal.xinli.local:6080/arcgis/rest/services/SampleWorldCities/MapServer/0/query?where=CITY_NAME%3D%27Guangzhou%27&f=JSON
输入到Request URL中的URL需要将字符转码回来,如:
http://portal.xinli.local:6080/arcgis/rest/services/SampleWorldCities/MapServer/0/query?where=CITY_NAME='Guangzhou'&f=JSON
定义完成结果如下:
4.4.请求参数修改
query参数定义可以在新建的query地址上右键选择edit。然后根据需要添加。
4.5.关联Web Test与Data Source下的查询条件
展开Query Parameters,右键选择where条件-->Link Data Source。
这里的where条件是按CITY_NAME字段来做查询,为了让CITY_NAME的值随请求而变化,使用这里的Link Data Source来实现。即将CITY_NAME与DataSource下Cities.csv的CITY_NAME列关联,这样System Test在发送请求时,会动态从Cities.csv文件中CITY_NAME列中取值来设置where条件。
5.负载设置
5.1.负载设置
展开web tests,右键选择QueryCitiesTest-->Create Load Test。System Test会自动在Load Tests增加相应内容,同时会打开配置界面。
示例:初始负载1个用户,停止负载时3个用户,步长1个用户,每次增加用户耗时时长5秒,每次负载持续时间1分钟。使用思考时间,默认6秒。
5.2.GIS Server设置
设置内容包括:服务器的登录用户,测试连接,增加监控服务器。
auto指的是自动增加与测试关联的服务器。
6.执行负载测试
展开Load Tests,右键选择QueryCitiesTest-->Start Load Test执行测试。测试完成会自动生产Excel格式的测试报告。
7.检验测试结果
根据Excel报告,检查性能是否满足要求。
参考资料:
[1] System Test帮助