首页 文章

jmeter中的多个用户登录

提问于
浏览
28

我正在使用jmeter来测试一个php应用程序 . 我需要为每个用户创建一个具有唯一会话的不同线程 . 因为在我的应用程序中,每个用户一次只能登录一次,因此将相同的用户放置100次,我将无法得出任何结论 . 我创建了40个用户user0,user1 .... user39使用相同的密码有没有办法自动为每个用户创建同步线程?

谢谢

4 回答

  • 1

    我意识到这个问题已经有一年多了,但我刚遇到同样的问题,并且认为我会为遇到这个问题的其他人添加我的解决方案 .

    如果您有一系列用户名和密码,这些用户名和密码只是在其值的末尾用数字区分,则可以使用__threadNum变量将其记录下来 . 因此,对于username的值,您可以说用户$ .

    此解决方案比包含csv更简单,但仅适用于您有问题列表的列表 .

  • 24

    将csv文件和testplan(即jmx)保存在同一文件夹中,并重新检查CSV datasetconfig和http请求中的变量名称是否存在任何输入错误 .

  • 54

    您可以使用CSV数据集配置 . 此控件允许您使用外部变量源 . 添加 - >配置元素 - > CSV数据集配置您必须设置变量名称,例如:变量名称(逗号分隔):USERNAME,PASSWORD

    然后,您可以使用HTTP请求参数中的变量,例如:$ 和$

  • 28

    我刚刚使用jmeter为使用Spring Security的应用程序实现了这一点(它与PHP非常相似) . 这很简单,基本上:

    1)使用文本编辑器Ex:CSVSample_user.csv创建新的CSV文件

    username1, password1
       username2, password2
    

    2)在jmeter中,创建CSV数据集配置元素

    Thread Group>add>Config Element>CSV Data Set Config
      => Assign variable names (see image)
    

    3)创建HTTP请求元素

    Thread Group>add>Sampler>HTTP Request
      => Create a POST with parameters, have the variable you created 
         put the values for the parameter. (See bottom image).
    

    注意:您还需要其他元素,例如cookie管理器等 . 还需要将线程数设置为登录用户数 .

    enter image description here

相关问题