Return-Path: X-Original-To: apmail-jakarta-jmeter-user-archive@www.apache.org Delivered-To: apmail-jakarta-jmeter-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id AA9236EAD for ; Tue, 12 Jul 2011 15:43:11 +0000 (UTC) Received: (qmail 12502 invoked by uid 500); 12 Jul 2011 15:43:11 -0000 Delivered-To: apmail-jakarta-jmeter-user-archive@jakarta.apache.org Received: (qmail 12426 invoked by uid 500); 12 Jul 2011 15:43:10 -0000 Mailing-List: contact jmeter-user-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "JMeter Users List" Reply-To: "JMeter Users List" Delivered-To: mailing list jmeter-user@jakarta.apache.org Received: (qmail 12417 invoked by uid 99); 12 Jul 2011 15:43:10 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 12 Jul 2011 15:43:10 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of pablo.llopis@gmail.com designates 209.85.216.179 as permitted sender) Received: from [209.85.216.179] (HELO mail-qy0-f179.google.com) (209.85.216.179) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 12 Jul 2011 15:43:03 +0000 Received: by qyk29 with SMTP id 29so3365793qyk.10 for ; Tue, 12 Jul 2011 08:42:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; bh=Yq0W84D33CsrOp2PCZ5ID6UdH1pf3dCqSWZlkWEzbPI=; b=nklr29lM9XNV8pfkRTh3hT3H5EtAX2bEefdNNQc+pKc1AFBC5Hh5Z6vghpSouAxcud BG4EN0FkrHwNPGvvFHz6t4tiZ3NtsJhXTnUvtsiCM5bdGE1MU5cjiTMiog5EeDAiQoro X+foOP397odSKhLMSHnQWOTBujtYpjV4EVEnE= MIME-Version: 1.0 Received: by 10.224.180.206 with SMTP id bv14mr54419qab.278.1310485362880; Tue, 12 Jul 2011 08:42:42 -0700 (PDT) Received: by 10.229.227.8 with HTTP; Tue, 12 Jul 2011 08:42:42 -0700 (PDT) Date: Tue, 12 Jul 2011 17:42:42 +0200 Message-ID: Subject: Variables in HTTP headers From: Pablo Llopis To: jmeter-user@jakarta.apache.org Content-Type: multipart/alternative; boundary=20cf30363f6f89b16004a7e126ae --20cf30363f6f89b16004a7e126ae Content-Type: text/plain; charset=ISO-8859-1 Hello JMeter Community, I am trying to do some performance test on an authentication service deployed at a very small testing OpenStack Swift cluster. The important details about this is that in order to authenticate a user, the user needs to supply two HTTP headers (X-Storage-User and X-Storage-Pass). In return, an auth token is provided through HTTP headers (X-Auth-Token). Using HTTP Authorization Manager does not seem an option because I do not see how I can force it to use those custom http headers. I can successfully authenticate using a single user by using the HTTP Header Manager and setting both required headers accordingly. In order to obtain the resulting auth token, I suspect that I can just use a Regular Expression Extractor PostProcessor, but I have not verified that yet. I am having trouble doing authentication as described above when using dynamic username/password combinations that are saved in a CSV file. It seems like even if I use a CSV Data Set in order to create the user and password variables, HTTP Header Manager ignores those variables. Instead, I am literally seeing ${user} being sent through the wire. I am not sure if this is due to the fact that HTTP Header Manager is a Config Element which is only loaded initially. Or maybe HTTP Header Manager is supposed to handle variables but I am doing something very wrong. I don't see how I could insert variables into HTTP Headers otherwise, as HTTP Request does not offer that option. I am fairly new to JMeter, so its possible that I am missing something obvious. Any thoughts on the easiest way to accomplish inserting variables stemming from a CSV file into HTTP Headers? (each thread, being a different user, would use a different variable). Maybe this is not possible at all and I will need to write my own "component", maybe extending HTTP Request? (how straightforward would this be, if this is the only way?) I am sorry if this was answered before, but no search results were helpful :) Thank you, Pablo --20cf30363f6f89b16004a7e126ae--