Category Archives: loadurnner

loadurnner

global think time :: vugen

There’s no doubt, that thinktime is required in all performance scripts. Without it, you would be running a user and a speed which is not realistic, and let’s face it, creating a realistic scenario is really what writing a test harness is all about.
With that in mind, thinktime is something that can be debated till the cows come home, developers want more, business owners want less, and us performance guys, well, we just want whets real.

It can be frustrating going through all your scripts, modifying the think times, and changing them at the runtime settings to limit them to X seconds, can often not meet the requirements. I’ve come up with a solution that should suffice, making changing the thinktime in your scripts simple, quick, and pain free.
read more »

loadurnner

paramatising transaction counters :: vugen

There is really no point in running a load test, if you’re not going to capture transaction times, that is, unless you just want to add load to a system for purposes other than load testing. Unless you’re a hacker, or you want to place unmeasured stress on the server under test, the information captured from transaction counters is very valuable.

But what happens when the page you’re submitting varies based on the parameter that is being passed through to it?
How do you capture the transaction for that particular instance page?
It’s really quite simple, but it can’t be done in 1 line of code, unlike most languages, which is classic to scripting in vugen, not to mention very annoying!.
read more »

loadurnner monitoring sitescope

sitescope 10.0 integration with loadrunner 9.0

As you can see, I’ve been playing with the new SiteScope. I cant say I’m overly impressed with allot of the decisions HP/Mercury has made. The removal of the classic interface, was a bad choice in my opinion. I never used the new UI, and always knew where everything was on the old UI. It was faster, and easier to get an overall picture.
The only reason I upgraded was for our new version of BAC I am trying to implement. However, during my BAU work, I noticed my metrics were not coming into loadrunner in my laodtests. Then I read an article that SiteScope 10 was not supported with loadrunner 9.0 and 9.5 and I would receive no support on the matter….thanks Mr. HP…

Luckily, I’ve worked out how to get it working with minimal fuss….

read more »

loadurnner Uncategorized

loadrunner error :: The user files were not transferred to the local load generator

This occurs When trying to run a load test on a remote load generator.
I have my script on a network location, as its easy to share with my team.
The script utilizes the loadrunner parameters, and the dat files are stored on the same network location, in another folder of course.
Two errors actually occur
1.Error: The user files were not transferred to the local load generator
2.One or more of the script’s files have illegal names.It is possible that two files are using the same name and directory

Unfortunately for me, this error does not give me much information, like most of mercury/hp’s errors, it leaves me on a wild goose chase. The reason to the problem is quite bizarre, and very strange. But there is a way to fix it.

read more »

loadurnner qtp ruby

random numbers & words

The random function is extremely useful, no matter the language or application. I personally utilise it a lot, between many different languages. I have found, however, that it is one of those functions I always seem to forget how to do, and find myself re-learning it again.
I find the issue when I change from, be it, ruby, to qtp to loadrunner to winrunner. do while loops, counters, and arrays are all quite standard, but random, well, it gets me every time.

read more »

loadurnner

creating loadrunner functions

As we all know, creating functions has its benefits, and the rule of thumb is that if you’re going to use something more than once, its always better to create a function and call that function. Loadrunner is no different.

This post is quite a simple technique that is probably very well known in the community, so I’ll keep it short.

read more »

loadurnner

run time settings :: scheduling & pacing

I have found that run time settings give me the most grief when planning a run. In particular, pacing, think time and scheduling. After calculating the amount of users and the quantity of transactions vs the duration, I need to do some simple mathematical calculations to work out the pacing of the vusers, and the ramp up time. If you’re like me, you hate spending 20 mins with a calculator working it out. So a colleague of mine built a spreadsheet that we just plug figures in and it does the rest.

I’ve built on this spreadsheet, given that during shakeout, I do not run 100% of user load on the system, instead I may run 10% or 20% or even 50%. Given this, once I have the 100% figures, I don’t want to re-calculate everything at a reduced rate, that’s just annoying…

read more »

loadurnner

loadrunner controller – invalid action

If you have ever written a loadrunner script, you’d have noticed the actions on left of the window. Actions allow you to split your script up into logical components, which help with debugging, recording, and not to mention the benefits in analysis.
By default loadrunner gives you 2 actions, vuser_init, and vuser_end. they are only executed once per script, regardless of the amount of iterations, and they do just as their name implies, initialise and end the virtual user. You have the ability to add your own actions, delete, and rename them, anywhere in between vuser_init and vusier_end. And this is where our problem begins.

read more »

loadurnner

loadrunner & content checks

At the moment, I’m using laodrunner to performance test a web application. The application, like all, has an array of regular error messages that appear. All scripts should have some form of error checking/handling, but as there is limited re-usability in scripts for performance/load testing, I believe its best to keep it to a minimal. It’s a ‘run and throw away’ style of scripting, there is no performance regression suite, even though you could go through several phases of an application, and performance testing would be required in each phase, more often than not, the application has changed so much, that a need to re-record and re-correlate is required. Therefore you would be forced to throw away the error checking logic that you spent hours defining == waste of time and $$.

Sure, some level of error checking is needed to determine the source of failure, when an error occurs, and being able to easily identify the client side error messages helps eliminate many tangents. I’ve seen performance scripts with complex error handling, that usually have taken hours to code, expensive time which the client is paying for and code which could possibly never be executed. So it only makes sense to KISS.

read more »