несколько пользовательских логинов в jmeter

Это возможно, но только если пользователь нажимает гиперссылку на странице. Если пользователь использует браузер для перехода от страницы, он получит диалоговое окно браузера по умолчанию, в котором нет возможности сохранить.

Dirty Forms автоматически присоединяет (и удаляет обработчик) beforeunload, поэтому ваша попытка создать другой обработчик событий, безусловно, потерпит неудачу. Вы никогда не должны делать этого при использовании Dirty Forms.

Вы не указали, какую модальную структуру диалога вы хотели использовать, поэтому я просто покажу пример с использованием диалогового окна JQuery UI. Интеграция других диалоговых фреймворков аналогична. Для этого вы можете проверить исходный код существующих предварительно построенных диалогов .

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



    



    
    

    Change one of the fields below, then click "Go to Google" to try to navigate away.

    
First name:
Last name:
Go to Google

В примере используется привязка пользовательских событий для присоединения к обработчику событий onRefireClick, который если choice.proceed = true, но не когда false.

29
задан Catalin Marin 11 April 2011 в 15:17
поделиться

4 ответа

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

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

29
ответ дан ghm1014 11 April 2011 в 15:17
поделиться

сохраните файл csv и план тестирования (i.s jmx) в одной и той же папке и перепроверьте имя переменной в конфигурации набора данных CSV в запросе http на наличие ошибок ввода.

1
ответ дан Divesh Salian 11 April 2011 в 15:17
поделиться

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

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

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

25
ответ дан Matt Clark 11 April 2011 в 15:17
поделиться

Я только что реализовал это, используя 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).


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

enter image description here

54
ответ дан ibaralf 11 April 2011 в 15:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: