Есть ли способ добавить динамические заголовки, такие как авторизация, перед запуском sampler?

#javascript #jmeter #hmac

#javascript #jmeter #hmac

Вопрос:

Я настраиваю Jmeter для тестирования permformance. Однако мой API требует аутентификации HMAC перед запуском API. У меня есть JS-скрипт для того же.

 vars.put('hmacAuthHeader', response);
  

И в диспетчере заголовков я добавил заголовок как:

 Authorization: ${hmacAuthHeader}
  

После запуска sampler, когда я проверяю заголовки запросов, они остаются прежними. Кроме того, логика генерации hmac зависит от запроса, который я отправляю на сервер, примерно так:

 if(request['method'] == 'GET') {
    l_content_type  =   '';
} 
  

Пожалуйста, предложите способ добиться этого.

Ответ №1:

У меня есть код Java для этого. // Если имя пользователя и пароль есть, чем AuthManager manager = new AuthManager();
Authorization authorization = new Authorization();
// authorization.setURL("http://url");
authorization.setUser("username");
authorization.setPass("password");
manager.addAuth(authorization);
manager.setName(JMeterUtils.getResString("auth_manager_title")); // $NON-NLS-1$
manager.setProperty(TestElement.TEST_CLASS, AuthManager.class.getName());
manager.setProperty(TestElement.GUI_CLASS, AuthPanel.class.getName());