несколько пользовательских логинов в jmeter - PullRequest
30 голосов
/ 11 апреля 2011

Я использую jmeter для тестирования приложения php. Мне нужно создать другой поток с уникальным сеансом для каждого пользователя. Потому что в моем приложении вы можете иметь только один логин на пользователя за раз, поэтому, если вы установите 100 раз одного и того же пользователя, я не буду делать никаких выводов. Я создал 40 пользователей user0, user1 .... user39 с тем же паролем, есть ли способ автоматически создавать одновременные потоки для каждого из них?

Спасибо

Ответы [ 4 ]

55 голосов
/ 25 мая 2012

Я только что реализовал это, используя jmeter для приложения, которое использует Spring Security (это было бы очень похоже на PHP). Это довольно просто, в основном:

1) Создайте новый файл CSV с помощью текстового редактора Пример: CSVSample_user.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).

1012 *
*

ПРИМЕЧАНИЕ: вам нужны другие элементы, такие как менеджер файлов cookie и т. Д. Кроме того, количество потоков должно быть установлено в соответствии с количеством пользователей, вошедших в систему.

enter image description here

29 голосов
/ 11 апреля 2011

Вы можете использовать конфигурацию набора данных CSV.Этот элемент управления позволит вам использовать внешний источник переменных.Добавить -> Элемент конфигурации -> Конфигурация набора данных CSV Необходимо установить имена переменных, например: имена переменных (разделенные запятыми): USERNAME, PASSWORD

Затем вы можете использовать переменные в параметрах HTTP-запросов, например: $ {USERNAME} и $ {PASSWORD}

26 голосов
/ 26 сентября 2012

Я понимаю, что этому вопросу больше года, но я только столкнулся с той же проблемой и подумал, что добавлю свое решение для всех, кто сталкивается с этой проблемой.

Если у вас есть последовательность имен пользователей и паролей, которые просто дифференцируются по номерам в конце их значений, вы можете использовать переменную __threadNum для входа в систему. Поэтому для значения имени пользователя вы можете сказать user $ {__ threadNum} .

Это решение проще, чем включение CSV, но работает только тогда, когда у вас есть список, такой как тот, который вы предложили в своем вопросе.

1 голос
/ 18 сентября 2012

сохраните файл csv и план тестирования (т. Е. Jmx) в одной папке и перепроверьте имя переменной в CSV datasetconfig и http запросе на любую ошибку ввода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...