全部产品

如何使用参数化模拟多用户注册或登录

更新时间:2019-07-24 17:36:30

若您需要压测的业务中包括用户登录 / 注册的场景,可以借助 PTS 提供的文件参数功能,模拟不同用户的登录 / 注册的压测场景。本文将以对用户注册界面发起压测为例,介绍如何使用文件参数来构造动态变化的请求 URL。

背景信息

在网站注册页面,通常需要用户提供用户名和密码,如下图所示。若您在压测时需要模拟多用户注册的场景,可以通过在压测场景中导入包含用户名和密码的参数文件,构造压测 API 时关联导入的参数来实现。

关于登录场景的 PTS 支持能力的信息,详情请参见登录(Cookie)的支持

reg_page2

在网站登录页面,通常还需要输入验证码。若您在压测时需要模拟多用户登录的场景,您可以业务代码中配置一个万能验证码,并且在 PTS 配置 API 时带上万能验证码,然后通过在压测场景中导入包含用户名和密码的参数文件,构造压测 API 时关联导入的参数来实现。

步骤一:准备参数文件

  1. 下载参数文件示例至本地,或者在本地用excel编辑好之后另存为 .csv 格式的文件(或者可以用 Apache 的 commons-csv 来生成),构造两列数据,分别对应用户名和密码,如图所示:

    94680_3

    说明:此文件中仅有 10 行数据,这些数据可以在压测中循环使用或仅使用一次。您也可以准备更多行数据,构造更多用户的登录/注册请求。

步骤二:创建压测场景

  1. 登录 PTS 控制台,在概览页单击快速压测,或者在左侧导航栏单击创建压测 > 快速压测

  2. 创建压测页面,填写以下:

    • 场景名:压测用户注册页面
    • 压测 API 名称:用户注册

    如图所示:

    94680_1

步骤三:导入参数文件

  1. 创建压测页面右上角,单击全局自定义参数

  2. 文件参数定义部分,点击+上传文件,将本地的参数文件导入 PTS。

  3. 文件导入后,系统自动根据文件中的两列生成参数列表。您需要手动填入参数名,例如 “username” 和 “password”。单击确定,关闭对话框。

    94680_4

    单击创建压测页面右上角的参数列表,查看已创建的文件参数,如图所示:

    94680_5

步骤四:填写压测 URL 和 Body

  1. 创建压测页面,填写压测 URL,例如 http://www.example.com/register
  2. 选择请求方式POST

    1

  3. 选择 Body定义 页签,单击 Body 编辑区域右上角的文本编辑,在文本编辑框中输入 user_name=${username}&user_pwd=${password}&code=common_code。

    200

    说明

    • Body 中使用的用户名参数为 ${username},密码参数为 ${password}。

      打开参数列表,单击参数名 username 或 password 可复制参数内容,编写 Body 内容时,直接粘贴即可。

    • 在用户注册场景中,通常您需要在业务代码中设置一个万能验证码。以上图为例,common_code 是万能验证码。
  4. 返回当前 API 的基本请求信息页签,勾选数据轮询一次,能够保证在使用数据文件组装请求时,每一行只用到一次,避免重复登录。当数据轮询一次用尽,不论设置的压测量级是多少,该压测场景将停止生成新的压测请求。

    如不勾选数据轮询一次,导入的参数可以在压测中循环使用。

    201

步骤五:配置压力并启动压测

  1. 创建压测页面,选择施压配置页签,填写最大并发数值(10),其他可保留默认配置。

    94680_7

  2. 单击右上角保存去压测,启动压测。