PTS的数据导出功能可用于在一个串联链路内或者全场景内共享返回的Cookie等场景。本文将介绍如何使用导出Cookie模拟登录场景。
背景信息
PTS支持在串联链路共享Cookie和在场景内共享Cookie:
-
串联链路内共享:若想在一个串联链路内传递(共享)Cookie信息,则不需要任何额外设置。PTS和浏览器类似,默认会在后续的请求中携带获取到的Cookie。
-
场景内共享:登录Cookie可以在同一个场景内进行共享。同一场景内,只能指定将一个串联链路内的Cookie共享给其他串联链路使用。
若需压测10000人登录某购物网站的场景,则压测场景中应包含两个串联链路:
-
串联链路1:登录。
-
串联链路2:查看商品、购买商品、支付订单。
该场景中需要把串联链路1中的登录Cookie共享给串联链路2。您还可以根据实际需求设置导出Cookie是否可循环。
-
若允许导出Cookie在后续串联链路中循环使用,具体操作,请参见导出Cookie可循环。
-
若要求导出Cookie在后续串联链路中仅轮询一次,需要在后续串联链路中增加数据配置节点,并设置数据轮询一次,具体操作,请参见导出Cookie仅轮询一次。
导出Cookie可循环
- 登录PTS控制台,在左侧导航栏选择性能测试 - 创建场景。
-
单击PTS压测,在场景配置页签中配置串联链路1。
-
单击数据源管理,上传包含用户登录名和密码的参数文件,具体操作,请参见文件数据源。
-
在串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据配置。
-
在数据配置区域单击数据源参数设置页签,并配置参数。
说明若需保证共享Cookie的唯一性,则需选中数据轮询一次,具体操作,请参见添加数据配置节点。
-
添加登录API,并填写基本请求信息和定义Body,具体操作,请参见自定义API概述。
在Body定义页签中,Content-Type选择x-www-form-urlencoded,添加以下参数:user_name对应Value为${username},user_pwd对应Value为${password}。
-
在串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据导出,然后选择导出数据为Cookie类型,导出量级为10000。数据导出的具体操作,请参见数据导出。
说明该场景内创建的其他串联链路都会自动带上Cookie信息。
-
-
单击+添加串联链路,新增串联链路2,在串联链路2中单击添加压测节点,添加查看商品、购买商品和支付订单API,并配置基本请求信息。
导出Cookie仅轮询一次
- 登录PTS控制台,在左侧导航栏选择性能测试 - 创建场景。
-
单击PTS压测,在场景配置页签中配置串联链路1。
-
单击数据源管理,上传包含用户登录名和密码的参数文件,具体操作,请参见文件数据源。
-
在串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据配置。
-
在数据配置区域单击数据源参数设置页签,并配置参数。
说明若需保证共享Cookie的唯一性,则需选中数据轮询一次,具体操作,请参见添加数据配置节点。
-
添加登录API,并填写基本请求信息和定义Body,具体操作,请参见自定义API概述。
在Body定义页签中,Content-Type选择x-www-form-urlencoded,添加以下参数:user_name对应Value为${username},user_pwd对应Value为${password}。
-
在串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据导出,然后选择导出数据为Cookie类型,导出量级为10000。数据导出的具体操作,请参见数据导出。
说明该场景内创建的其他串联链路都会自动带上Cookie信息。
-
-
在串联链路2添加数据配置节点,并为productID参数选中数据仅轮询一次。具体操作,请参见设置文件参数。
该步骤可以保证上一步导出的cookie仅轮询一次。
-
在串联链路2中添加查看商品、购买商品和支付订单API,并配置基本请求信息。
后续步骤
完成测试场景配置后,还需要进行施压配置、场景调试等步骤。完成后单击页面左下角的保存去压测。
-
进行施压配置,具体操作,请参见如何进行施压配置。
-
如需进行域名绑定,具体操作,请参见域名绑定。
-
如需添加监控,具体操作,请参见云资源监控。
-
如需配置SLA定义,具体操作,请参见配置SLA。
-
进行场景调试,具体操作,请参见调试场景。
压测过程中可针对API、串联链路或全局维度进行调速,具体操作,请参见调速。