Performance-Testing

Friday, March 18, 2016

Practical mathematics

For a brief while, I used to be a mathematician. But believe me, statistics was never a strong suit in my case ! So this article has some very basic thoughts on a way to get more out of performance testing with really very little effort.

I've come up against a few real-world situations where performance test analysis is almost complete and test script development about to begin. The analysis has yielded a breakdown of the client's activities into business processes and given an indication of the average sizes of data objects those processes handle. For example "12 rows on an invoice" or "10 items in an order". You're using a realistic spread of data and you know that by measuring performance for enough transactions, you'll get valid results. Then the client points out that they care quite a lot about the invoices or orders that are much larger than the average. Perhaps they represent more important customers or suppliers. And checking your figures, you find out that when you just look at the top 5% of the objects their average is indeed much larger. They could average 50 or 100 items say.

You feel a bit sheepish at this point but you know you're dealing with a fairly skewed distribution, and you're secretly pleased this question was asked before it's too late. So what can you do ?

An approach I've often used during performance test analysis is to divide up the data into two sets - representing the top 10% and representing the remaining 90%. You may have to identify test data that matches the criteria, or perhaps load enough fresh data representing the "normal" and "large" items. Then when you setup your load test you include two copies of the script, one using only "normal" data and one using "large" data. If you're lucky the load test tool will automatically collect performance data for the two sets of test users side by side - if not you may need to use some tricks like changing the transactions names so you can identify results from the "normal" and "large" data.

When you execute load tests you will find some transactions such as opening a line item perform much the same in each script. But you will also see interesting effects - perhaps the "large" script takes 5 times as long (on average) to open 50 items as it does 10 items. You can then go back to your non-functional requirements and assess the likely impact on users. You can also have much more interesting conversations with the designers and developers of the system and see quick ways to make significant performance improvements. You can also use monitoring tools such as CA Wily Introscope to probe into the behaviour of the application during tests. So this is a technique well worth considering.

There will always be situations where the simple approach does not work. For example, you may need to produce a graph showing the variations in transaction response time caused by data size. To be honest I've only done that once in eleven years !

15 Comments:

Blogger Unknown said...

It’s really amazing that we can record what our visitors with your site. Thanks for sharing this awesome guide. I’m happy that I came across with your site this article is on point,thanks again and have a great day.
Hadoop Training in chennai

11:29 PM  
Blogger Sowmiya said...

your blog is really awesome and you have clearly explained many more topics and it is really good thus it is very much interesting and really nice too.

Best Informatica Training Institute in Chennai

1:50 AM  
Anonymous Anonymous said...

The blog is absolutely fantastic. Lots of great information and inspiration, both of which we all need. Thanks.
Power Plant Performance Test

7:12 PM  
Blogger Shaakshi said...


This idea is mind blowing. I think everyone should know such information like you have described on this post. Thank you for sharing this explanation.Your final conclusion was good. We are sowing seeds and need to patiently wait till it blossoms.
Car Wash Services in Mumbai

6:24 AM  
Blogger Sohail Tami said...

You are done good job like my blogs are stratigic on the go apkfile

1:08 AM  
Blogger Padhma said...

Thank you for taking the time to provide us with your valuable information. We strive to provide our candidates with excellent care.As always, we appreciate you confidence and trust in us.
Back to original

4:06 AM  
Blogger Unknown said...

Superb i really enjoyed very much with this article here. Really its a amazing article i had ever read. I hope it will help a lot for all. Thank you so much for this amazing posts and please keep update like this excellent article.

Best Laser Clinic In Chennai

4:31 AM  
Blogger sathya said...

I read this content really awesome.You provided another one great article.I hope this information may change my business carrier.I can remember these things whenever taking the decision.

Hadoop Training in Chennai

9:28 PM  
Anonymous Anonymous said...


Really Good blog post about pracrical mathematics.provided a helpful information.keep updating...
SEO Company in India

8:12 PM  
Blogger Unknown said...

Thanks for sharing about practical situations
Website Performance Testing Service

4:33 AM  
Blogger Suzan Baker said...

Its a hard life without bringing the issues of complex mathematics in it.
compare cheap airport parking deals
compare airport parking

11:53 PM  
Blogger Patricia Carter said...

The post really is great. Thanks for sharing it.
Eric church tickets
cheap Eric church tickets

5:01 AM  
Blogger Tutorialspoint said...

"ٹیوٹوریلسپیٹ"
مفت آن لائن سبق اور کورسز
مفت آن لائن ویڈیو سبق
مفت آن لائن تعلیم بک اسٹور
جاوا
   موجودہ معاملات
  UPSC

5:29 AM  
Blogger Digital marketing said...

Nice post
have you heard about the institute that teaching digital marketing course with paid internship?
Check out
digital marketing institute in coimbatore

5:00 AM  
Blogger Alexander said...

So cool and informative knowledgeable blog!
Thank you for sharing with us.

cs patio covers

12:51 PM  

Post a Comment

<< Home