Showing posts with label Jmeter. Show all posts
Showing posts with label Jmeter. Show all posts

Thursday, January 17, 2013

Recording Script for Jmeter with BadBoy tool

Hi! Today we will see, how to record script For static website(those web-page which doen't have any connection to sql server) with badboy tool.

1. Badboy tool is an simple automation tool. With this tool we can record script and can export as jmeter script (.jmx).
2. First install badboy tool, download link is http://www.badboy.com.au/download. You can easily download it for thi link.
3. Install it, and start,   Now follow the tutorial.....
4. To show you, how to record script tking exampe of  simple website
link is : http://www.sarahhayes.co.uk/



5. So you see how easy is this. try it...

For any query mail: digvijaybisht29@gmail.com

Bye..  : )




Sample Interview Questions on Jmeter

Basic Questions:


Q1: What is the use of Jmeter?
Ans: Jmeter is an open source desktop application software, 100% pure Java application, which is designed to perfom load testing of web based application.

Q2: Is it mandatory to install java first, to run jmeter?
Ans: Yes, Jmeter is an java based application. So you should install java 1.5 or later version in your system.

Q3: Can we do regression testing with Jmeter?
Ans: Yes we can, after-all it is all about java-script. :)

Q4: How we can run jmeter?
Ans: By simply clicking on Jmeter.bat, or by using commnad: C:\>Jmeter

Q5: What are the options, do you see when jmtere window opens?
Ans: 1. Test Plan     2. Workbench

Q6: Which component, do we need to add, to record script?
Ans: We need to add Http proxy server, by simply right clicking on Workbench > Non-Test elements > Http proxy server.

Also need to enable proxy, with port 8080, by going to internet settings> Connections > Lan. Name will be "localhost".
Then click on start button on jmeter http proxy server window.

Q7: Can we perform load testing of database with jmeter?
Ans: Yes we can. To see the process follow: Database load testing with jmeter link. You should be aware of sql queries.

Q8: What are listeners in Jmeter?
Ans: Listeners in jmeter are used to capture the response data of load test. We can have response data (result) in , cvs, image (graph) or in html format.

Q9: Name 4-5 listeners in jmeter, which are commonly used.
Ans: 1. View result tree 2. Summary report 3. Aggregate Graph 4. Response time vs thread 5. Composite graph

Q10: What is Response time in Jmeter report?
Ans: Response time in Jmeter report, is the time taken by web server, to answer the requested query. In simple words, it is the time taken by a web server to respond the http request.

Q11: What is median in jmeter listener?
Ans:  It is a number which divides the samples into two equal halves. Half of the samples are smaller than the median, and half are larger.

Q12: What is throughput in jmeter listener?
Ans: Throughput is relation between time and data.It shows the relation between http request and unit time. Means how many requests are processed in how much time.

Throughput = Number of requests / Time(second or millisecond)

Q13: Which Jmeter elements are used for Parameterization?
Ans: 1. User parameter 2. CSV Data Set config

Q14: Which controllers are used as an conditional controllers in jmeter?
Ans: If controller and While controller

Q15: What is heap size in jmeter?
Ans: Jmeter is work in java, and heap size is related to java. Java heap is the heap size allocated to JVM applications which takes care of the new objects being created. If the objects being created exceed the heap size, it will throw an error of java.lang.out.of.memory.
Java's default heap size limit in Jmeter is 256 MB.

Q16: Is it possible that, if we increase the heap size in Jmeter, then application(jmeter) might not work?
Ans: Yes, it is possible. Because heap size depends upon the empty space of your machine in c drive as well as your RAM. If the RAM is 1 Gb and you increased the heap 2048, it may not work.



Friday, July 1, 2011

How to monitor server,s system performance while running Jmeter

This is the big question , when you are putting load on webserver from your computer or using distributed load testing, what is behaviour of server's computer..Server's computer behaviour means at the time of load what is cpu performane, network performance, i/o. So we need to monitor thise things also. But as i have practiced i was not be able to do distributed load testing and also monitoring the cpu performane of server's computer. For that what you can do?I will tell you waht i have tried. I open two jmeter windows. In one window i did distributed load testing, and in another i used the same script but with single thread (user), and check on forever, and added the server performance monitor listners. What it will do? It will run one user in loop till you will not stop the test and also provide you the server's computer performance. Because one user will create that much diffreence according to me.
First i will tell you have to add plugins in jmeter for listners.
For that you have to download  jmeter plugin.jar for the jmeter version you are using. Now extract jmeter plugin and copy jmeter plugin.jar file to c:/jmeter/lib/ext. And from the extracted file you will also get the server agent folder. Copy the server agent folder to the web server's computer and past it in c: drive. Explore server agent folder at server's end and start start agent.bat file.

















Now you should know the server's computer ip. Like we have the server ip is 192.168.45.89.

Now from your computer start jmeter and add-:


After clicking server performance monitor you will see the window like:-

















In this window you will be able to see add row,copy row and delete row.And clickig on add row the window will be like:-
















Here below Host/Ip where local host is written you have to type the ip of server's computer.And the port will be by default set to 4444 till no changes done at the server end.
Also you will be able to see cpu,memory,swap,disksI/O,NetworksI/O.From here you can select single object at a time.If you want to see all the details at the same time,so you can add server performance monitor from thread group-add-listners,and then can select another object.
Remember first you have to record or open the test then add the listners.
Now when you will start the test you will be able to see the server's performance selecting server performance monitor.
I think this blog may helpful to you for this senario..
Thank you

HOW TO DO DISTRIBUTED LOAD TESTING

Distributed load is referred with putting load on server by using another machine. In this you will send the request from your own computer which is called "Master" computer,to other computers which are called "slave" computer to web-server  With this you will be able to put max load on web-server with the different CPU usage.
The prerequisite for this:
  • You should turned off the firewalls of your computer.
  • All the clients should be the same Sub-net.
  • Make sure jmeter can access the server.
  • Make sure you use the same version of Jmeter on all the systems.
How to configure-In this in the master computer in which you are running Jmeter,first go to the C:/ drive where the jmeter folder is-Then explore the jmeter folder,go to jmeter properties/configure file,and edit it.
You will see the line after scrolling down remote Host-127.0.0.1
















Just add the ip of slave computer threw which you want to put the load on web-server.
Like I the ip’s are-192.168.34.78,192.168.34.89 etc..
But make sure that the IP should be of same domain.After adding the ip this line will look like-:















 


After editing the line press ctrl+s.This is what should be done in Master computer.
Now go to slave computers and on that –
Go to jmeter/bin directory and execute jmeter-server.bat (jmeter-
server). On windows, you should see a dos window appear with “jre\[version]
\bin\rmiregistry.exe”. If this doesn't happen, it means either the environment settings are
not right, or there are multiple JRE installed on the system.
1. Open jmeter-server.bat in a notepad or edit-plus.
2. Follow till line-44 and find “:setCP”
3. Edit “START rmiregistry” to the full path. Example: “START
C:\jre\bin\rmiregistry.exe”
















When you are putting the distributed load, you should execute the jmeter-server.bat file first.
Now when you will start Jmeter from master computer,on the run tab you will see the option remote start-















So as you can in the above figure in the remote start option you will be able to see all the ip’s. From here you can select the ip from which computer you want to put the load on web-server. Or u can click on Remote Start All to put load threw all the slave systems on web-server.
After configuring this you can record the test or open the save tests.

This will may helpful to you.for more information refer this link- http://jakarta.apache.org/jmeter/usermanual/remote-test.html

Tuesday, June 28, 2011

Jmeter tutorial


                                             How to install Jmeter

 Prerequisites-To use JMeter on your machine you should have latest Java Runtime Environment (JRE) installed on your machine and set the environment variables properly to work.

Installing JAVA:

1.       Download the latest Jar file.
2.       To install java in your computer follow given steps:

·         Install java in your computer.
·         Go to the installed folder, E.g. C:\Program Files\Java, and check that lib and bin folder’s are present or not.
·         If no then install java again, or if yes then proceed further.
·         Press “windows+R”, and type sysdm.cpl, then press enter.
·         After pressing enter:

·         The above window will appear, click advance>Environment Variable.
·         In system variable variable section, scroll down to search PATH, and then in Path click on Edit.
·         Now go to the folder where java is installed, and expand it till bin folder, for E.g..,
·         Now after clicking on edit button for Path, go to end in text box and after putting semi-column  paste the copied path of java bin in Path variable.

·         Now go to the user variable section and  click on New button. Now create a new variable with the name JAVA_HOME, and in the value paste the of you java. E.g C:\Program Files\Java. Then save it.
·    Again create a new variable with CLASSPATH, and in the value paste the path of your java library  For E.g. C:\Program Files\Java\lib., and save it.
·         Now your java is installed successfully.

Installing JMeter

1.       Download Jmeter from Here. Download “apache-jmeter-2.9.zipmd5pgp” file from Binaries.
2.       To configure Jmeter in your computer follow the given steps::
·         Extract the downloaded Jmeter folder, and copy it to the desired drive. For example I put the Jmeter file in C drive.
·         Now press windows+R, and go to system variable as done while installing java.
·         In user variable, create variable with the name JMETER_HOME, and in the value paste the path of Jmeter installed folder. For E.g. C:\Jmeter.
·         Jmeter is configured successfully.

Running JMeter
1)      Open JMeter root folder i.e. C:\jmeter
2)      Open bin directory inside jmeter folder
3)      Double click on “jmeter.bat” file.
4)      JMeter will be launched.

The window should be open like this with a command prompt window-

In this window you will be able to see the tabs-  1  : Test plan, 2 : WorkBench
As Jmeter is a usefull tool for load testing,so the first and important this is to record the script.
Script is whatever actions you have performed in website.
Now to record the script for testing,first of all right click on workbench and add http proxy server.
After selecting http proxyserver the window will be like:

Now  we will go to the test plan and right click on it and add thread group like:-

After selecting thread group:-

 [In this window number of thread users=no of users
Ramp-up period(in seconds):delay b/w every user
Loop count:how many time you want to repeat the test]
(Note:-By default the values will be as in the window)
Now to record the test first of all open the internet explorer,go to the tools then internet options,go to connection tab,click on lan settings.check the proxy server and give the Address:-localhost,port no-8080.click on ok and again click on ok.
Now got to the jmeter window and select http proxyserver,and click on start.
Open the website in internet explorer of which you want to test load.I am assuming the website is http://www.google.com/.  And performing some search actions.
Now move back to the jmeter window and select http proxyserver and click on stop. Then clich on thread group:-


Below thread group all are the http requests or we can say it as the recorded script.
Now here is the thing which is very important is that if you will put the load on web server from your own computer and the numbers of users are more than 1000 or 500.That time it might be possible that your computer or jmeter will hang.
To solve this problem we can use Destributed load method in Jmeter-