You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@jmeter.apache.org by Marcelo Jara <ma...@hotmail.com> on 2013/01/25 19:24:23 UTC

Using Jmeter in heterogeneous environment

This may be a unique situation. I currently develop my test plans on my desktop which is running Microsoft Windows. The load agents that are responsible for the stress tests, however, are on Linux servers. Is there a way Jmeter can detect which OS it's running on? The one case where this is needed is when defining the location of the data files. From my desktop, I define the path to a network share (e.g. \\netshare\jmeter\data). On the Linux agents, we mounted that network share to /mnt. So when the test plan runs on the Linux agent, it needs to get the data files from /mnt/jmeter/data. 
For now, I've made the data file path a parameter that I can pass in to the test plan, but was hoping a I can define both paths and have Jmeter decide which one to use depending on which OS it's running on. 
One way is to use an OS sampler in the setUp thread and try to perform a Windows only command (dir ?) and see if it returns and error. I can then assume we're on a Linux server. 
Thanks,
Marcelo 		 	   		  

RE: Using Jmeter in heterogeneous environment

Posted by "Stott, Charlie" <CS...@tnsi.com>.
Seems our dev setup is not so rare, I think many corporations use Windows on the metal, and Linux for production/test servers.

Depending on the OS, we need to fix up a few different parameters and setup resources, so it is not as simple as using a relative path.

I have used a javascript call to determine OS...

${__javaScript((os.name.substr(0,3)=="Win")?"${DATA_PATH_WINDOWS}":"${DATA_PATH_LINUX}")}




-----Original Message-----
From: Shmuel Krakower [mailto:shmulikk@gmail.com] 
Sent: Sunday, 27 January 2013 4:09 AM
To: JMeter Users List
Subject: Re: Using Jmeter in heterogeneous environment

Hi,
I also develop on Windows and run mostly on Linux.
Relative paths are working just fine for all of my use cases.

KISS

Shmuel Krakower.
www.Beatsoo.org - re-use your jmeter scripts for application performance monitoring from worldwide locations for free.


On Fri, Jan 25, 2013 at 9:27 PM, Robin D. Wilson <rw...@gmail.com> wrote:

> First, we use POSIX path conventions (e.g., '/' instead of '\' - which 
> works even on Windows).
>
> Second, in our scripts, we use 'relative' paths (e.g., 
> './path/to/file') instead of fully qualified path (/path/to/file - the '.'
> makes all the difference).
>
> Third, in our 'user.properties' file (in the JMeter './bin' folder), 
> we add this (Windows style):
>
>         includecontroller.prefix=X:/Tests/JMeter/controllers/
>
> Or (Unix style):
>
>         includecontroller.prefix=/mnt/Tests/JMeter/controllers/
>
> This tells JMeter where to start looking for included controllers.
>
> You also might be able to configure some variables, and use those (I 
> haven't tried this) in your path names...
>
> --
> Robin D. Wilson
> Sr. Director of Web Development
> KingsIsle Entertainment, Inc.
> VOICE: 512-777-1861
> www.KingsIsle.com
>
>
> -----Original Message-----
> From: Marcelo Jara [mailto:marcelojara@hotmail.com]
> Sent: Friday, January 25, 2013 12:24 PM
> To: user@jmeter.apache.org
> Subject: Using Jmeter in heterogeneous environment
>
> This may be a unique situation. I currently develop my test plans on 
> my desktop which is running Microsoft Windows. The load agents that 
> are responsible for the stress tests, however, are on Linux servers.
> Is there a way Jmeter can detect which OS it's running on?
> The one case where this is needed is when defining the location of the 
> data files. From my desktop, I define the path to a network share 
> (e.g. \\netshare\jmeter\data). On the Linux agents, we mounted that 
> network share to /mnt. So when the test plan runs on the Linux agent, 
> it needs to get the data files from /mnt/jmeter/data.
> For now, I've made the data file path a parameter that I can pass in 
> to the test plan, but was hoping a I can define both paths and have 
> Jmeter decide which one to use depending on which OS it's running on.
> One way is to use an OS sampler in the setUp thread and try to perform 
> a Windows only command (dir ?) and see if it returns and error. I can 
> then assume we're on a Linux server.
> Thanks,
> Marcelo
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@jmeter.apache.org
> For additional commands, e-mail: user-help@jmeter.apache.org
>
>

Re: Using Jmeter in heterogeneous environment

Posted by Shmuel Krakower <sh...@gmail.com>.
Hi,
I also develop on Windows and run mostly on Linux.
Relative paths are working just fine for all of my use cases.

KISS

Shmuel Krakower.
www.Beatsoo.org - re-use your jmeter scripts for application performance
monitoring from worldwide locations for free.


On Fri, Jan 25, 2013 at 9:27 PM, Robin D. Wilson <rw...@gmail.com> wrote:

> First, we use POSIX path conventions (e.g., '/' instead of '\' - which
> works even on Windows).
>
> Second, in our scripts, we use 'relative' paths (e.g., './path/to/file')
> instead of fully qualified path (/path/to/file - the '.'
> makes all the difference).
>
> Third, in our 'user.properties' file (in the JMeter './bin' folder), we
> add this (Windows style):
>
>         includecontroller.prefix=X:/Tests/JMeter/controllers/
>
> Or (Unix style):
>
>         includecontroller.prefix=/mnt/Tests/JMeter/controllers/
>
> This tells JMeter where to start looking for included controllers.
>
> You also might be able to configure some variables, and use those (I
> haven't tried this) in your path names...
>
> --
> Robin D. Wilson
> Sr. Director of Web Development
> KingsIsle Entertainment, Inc.
> VOICE: 512-777-1861
> www.KingsIsle.com
>
>
> -----Original Message-----
> From: Marcelo Jara [mailto:marcelojara@hotmail.com]
> Sent: Friday, January 25, 2013 12:24 PM
> To: user@jmeter.apache.org
> Subject: Using Jmeter in heterogeneous environment
>
> This may be a unique situation. I currently develop my test plans on my
> desktop which is running Microsoft Windows. The load agents
> that are responsible for the stress tests, however, are on Linux servers.
> Is there a way Jmeter can detect which OS it's running on?
> The one case where this is needed is when defining the location of the
> data files. From my desktop, I define the path to a network
> share (e.g. \\netshare\jmeter\data). On the Linux agents, we mounted that
> network share to /mnt. So when the test plan runs on the
> Linux agent, it needs to get the data files from /mnt/jmeter/data.
> For now, I've made the data file path a parameter that I can pass in to
> the test plan, but was hoping a I can define both paths and
> have Jmeter decide which one to use depending on which OS it's running on.
> One way is to use an OS sampler in the setUp thread and try to perform a
> Windows only command (dir ?) and see if it returns and
> error. I can then assume we're on a Linux server.
> Thanks,
> Marcelo
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@jmeter.apache.org
> For additional commands, e-mail: user-help@jmeter.apache.org
>
>

RE: Using Jmeter in heterogeneous environment

Posted by "Robin D. Wilson" <rw...@gmail.com>.
First, we use POSIX path conventions (e.g., '/' instead of '\' - which works even on Windows).

Second, in our scripts, we use 'relative' paths (e.g., './path/to/file') instead of fully qualified path (/path/to/file - the '.'
makes all the difference).

Third, in our 'user.properties' file (in the JMeter './bin' folder), we add this (Windows style):

	includecontroller.prefix=X:/Tests/JMeter/controllers/

Or (Unix style):

	includecontroller.prefix=/mnt/Tests/JMeter/controllers/

This tells JMeter where to start looking for included controllers.

You also might be able to configure some variables, and use those (I haven't tried this) in your path names...

--
Robin D. Wilson
Sr. Director of Web Development
KingsIsle Entertainment, Inc.
VOICE: 512-777-1861
www.KingsIsle.com


-----Original Message-----
From: Marcelo Jara [mailto:marcelojara@hotmail.com] 
Sent: Friday, January 25, 2013 12:24 PM
To: user@jmeter.apache.org
Subject: Using Jmeter in heterogeneous environment

This may be a unique situation. I currently develop my test plans on my desktop which is running Microsoft Windows. The load agents
that are responsible for the stress tests, however, are on Linux servers. Is there a way Jmeter can detect which OS it's running on?
The one case where this is needed is when defining the location of the data files. From my desktop, I define the path to a network
share (e.g. \\netshare\jmeter\data). On the Linux agents, we mounted that network share to /mnt. So when the test plan runs on the
Linux agent, it needs to get the data files from /mnt/jmeter/data. 
For now, I've made the data file path a parameter that I can pass in to the test plan, but was hoping a I can define both paths and
have Jmeter decide which one to use depending on which OS it's running on. 
One way is to use an OS sampler in the setUp thread and try to perform a Windows only command (dir ?) and see if it returns and
error. I can then assume we're on a Linux server. 
Thanks,
Marcelo 		 	   		  


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@jmeter.apache.org
For additional commands, e-mail: user-help@jmeter.apache.org