Another day – another feature discovered

I’ve been getting ready to test a website that is being optimised for mobile technologies. To test this I’ve been using Safari 5, where you can spoof the User-Agent to be iPhone, iPad or iPod Touch, and also Firefox with the excellent add-on of User Agent Switcher.

Both of these allowed me to see how the site was coming along – but when it came to recording for my load tests I had to think for a moment.
I’ve always just used Internet Explorer in VUgen, but now the super smarts of the website under test would detect it and… show the main website – not the mobile optimised site.
Not to worry – I installed Safari 5 and changed the settings in the recording options to use Safari instead…. No worries.
I already knew that I could set the User-Agent in the Runtime settings – but I wasn’t to pleased with this as it is a little hit or miss as to whether someone checks them all before running.
Not to worry – I extended the use of the web_add_header which I have previously used for testing the website with and without HTTPZip compression.
So just by adding :
web_add_header(“User-Agent”,”Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543 Safari/419.3″);

I was able to programmatically test as if I was an iPhone.
This pleased me and allowed me to run my tests , now I just need to figure out how to get Xenu Link Sleuth to pretend to be an iPhone too!

I love discovering a new feature in Loadrunner


It’s not often you get a “wow” moment when you’re running performance tests, but yesterday I had one.

I’d been running tests using vugen and Loadrunner controller – but everytime I wanted to shift environments I would recode the script either with a “Hostname” parameter file or by using lr_save_string to store the base url for the environment under test.
No big deal really – except I’ve just built an all singing all dancing Hour in the Life of scenario. A scenario with 20 different scripts all set to run at different rates – comparable to a single servers expected load on our site.
Again not particularly earth shattering.
I have just received 3 new servers with Windows Server 2008 R2 – and
I wanted to run the same HILO test against this to get a comparative benchmark of the better hardware , running with a newer O/S.
Suddenly it dawned on me – I was going to have to change each of the 20 script files everytime I wished to change the target of my test.
But then while fishing around (really I was googling) and playing around in the run-time settings on the controller I discovered a mysterio setting – that I’ve been overlooking for years…

Additional attributes.
To use this all I needed to do was to change the lr_save_string command to read the additional attributes and then all would be good.
For example : lr_save_string(lr_get_attrib_string(“ServerName”),”Hostname”);
Now I realise I still need to update all 20 files with this – but I was going to have to do this anyway. But when I want to change it next time I can make the change in the controller in the run-time settings, rather than having to open each file in turn, make the change and then save it.
Okay, I understand it’s a little win – but it’s just made my day so much easier.