使用Cookie模拟登录场景

PTS的数据导出功能可用于在一个串联链路内或者全场景内共享返回的Cookie等场景。本文将介绍如何使用导出Cookie模拟登录场景。

背景信息

PTS支持在串联链路共享Cookie和在场景内共享Cookie:

  • 串联链路内共享:若想在一个串联链路内传递(共享)Cookie信息,则不需要任何额外设置。PTS和浏览器类似,默认会在后续的请求中携带获取到的Cookie。

  • 场景内共享:登录Cookie可以在同一个场景内进行共享。同一场景内,只能指定将一个串联链路内的Cookie共享给其他串联链路使用。

若需压测10000人登录某购物网站的场景,则压测场景中应包含两个串联链路:

  • 串联链路1:登录。

  • 串联链路2:查看商品、购买商品、支付订单。

该场景中需要把串联链路1中的登录Cookie共享给串联链路2。您还可以根据实际需求设置导出Cookie是否可循环。

  • 若允许导出Cookie在后续串联链路中循环使用,具体操作,请参见导出Cookie可循环

  • 若要求导出Cookie在后续串联链路中仅轮询一次,需要在后续串联链路中增加数据配置节点,并设置数据轮询一次,具体操作,请参见导出Cookie仅轮询一次

导出Cookie可循环

  1. 登录PTS控制台,在左侧导航栏选择性能测试 > 创建场景
  2. 单击PTS压测,在场景配置页签中配置串联链路1。

    1. 单击数据源管理,上传包含用户登录名和密码的参数文件,具体操作,请参见文件数据源

    2. 串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据配置

    3. 数据配置区域单击数据源参数设置页签,并配置参数。

      说明

      若需保证共享Cookie的唯一性,则需选中数据轮询一次,具体操作,请参见添加数据配置节点

    4. 添加登录API,并填写基本请求信息和定义Body,具体操作,请参见自定义API概述

      ex_cookie_define_body

    5. 串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据导出,然后选择导出数据为Cookie类型,导出量级为10000。数据导出的具体操作,请参见数据导出

      ex_cookieuse_export_cookie

      说明

      该场景内创建的其他串联链路都会自动带上Cookie信息。

  3. 单击+添加串联链路,新增串联链路2,在串联链路2中单击添加压测节点,添加查看商品、购买商品和支付订单API,并配置基本请求信息。

    ex_cookieuse_link2

导出Cookie仅轮询一次

  1. 登录PTS控制台,在左侧导航栏选择性能测试 > 创建场景
  2. 单击PTS压测,在场景配置页签中配置串联链路1。

    1. 单击数据源管理,上传包含用户登录名和密码的参数文件,具体操作,请参见文件数据源

    2. 串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据配置

    3. 数据配置区域单击数据源参数设置页签,并配置参数。

      说明

      若需保证共享Cookie的唯一性,则需选中数据轮询一次,具体操作,请参见添加数据配置节点

    4. 添加登录API,并填写基本请求信息和定义Body,具体操作,请参见自定义API概述

      ex_cookie_define_body

    5. 串联链路1区域单击添加指令右侧的下拉箭头,然后单击数据导出,然后选择导出数据为Cookie类型,导出量级为10000。数据导出的具体操作,请参见数据导出

      ex_cookieuse_export_cookie

      说明

      该场景内创建的其他串联链路都会自动带上Cookie信息。

  3. 串联链路2添加数据配置节点,并为productID参数选中数据仅轮询一次。具体操作,请参见设置文件参数

    该步骤可以保证上一步导出的cookie仅轮询一次。

    product2

  4. 串联链路2中添加查看商品、购买商品和支付订单API,并配置基本请求信息。

后续步骤

完成测试场景配置后,还需要进行施压配置、场景调试等步骤。完成后单击页面左下角的保存去压测

说明

压测过程中可针对API、串联链路或全局维度进行调速,具体操作,请参见调速