I just learned how to use J-Meter and i am loving work with it.
I have to do load testing for a moodle install .
I wonder if there are any set of jmeter scripts to test moodle that i can re-use or like some kind of benchmark scripts that are somehow advanced and that can help me test the moodle performance.
Thanks in advance for any suggestions and links .
J Meter script can not be reused as it requires 1 time recording option.Hence you need to record your script at least 1, then keep running the script with load increase gradually depending on your server capacity.
Related
I have an asp.net project ,which I want to load test with around 100 users at a time , can someone plz tell me how can I do this. I tried jMeter but it seems very difficult to understand as because I m doing this first time..Thanks In Advance
First of all, you need to create test script. You can do this manually in Jmeter GUI, or you can use Recording controller or something like SmartMeter's Recorder
After that, you should have recorded script and you can edit it. Add some neede correlations, special variables, prepared data and so.
Before running the test, change number of threads to 100, setup rump-up time and you can start your test.
I suggest you to try some tutorials about load testing and Jmeter, eg.
Tutorials point
SmartMeter's quickguide
Blazemeter's tutorial
I have an scenario to measure login function performance for that i have used JSR223 preprocessor to encrypt my password using Javascript its around 2000 Line of code it works fine it encrypts the password successfully, i can able to login using my script it works fine in small number of users.
If we go for an large volume of users script finish first 3 steps very fast once it reaches JSR223 preprocessor thread it takes long time to process it makes delay in performance test.
Any suggestion to fine tune this process ?
Already i have configured the cache size as 1024 even though it takes long time to execute.
For 600 Users it takes 1hr +++ time to finish the process with 1 Master and 3 slaves environment.
Javascript should be avoided for Load Testing.
The best option is to use:
Groovy
Check Cache Compilation Key
Enter a unique key per Test element
This will make JMeter compile the script leading to most optimal performances, read this for more informations:
http://www.ubik-ingenierie.com/blog/jmeter_performance_tuning_tips/
If you're looking to learn jmeter correctly, this book will help you.
JavaScript is not the best language to use with JSR223 PreProcessor, it's being run via Rhino or Nashorn engine and your expression is being evaluated all the time from scratch using not very performant way.
According to JMeter Best Practices it is recommended to use Groovy scripting engine. Assuming good configuration you will be able to get groovy scripts compiled into native JVM bytecode hence performance will be much higher than for JavaScript.
In order to get Groovy support in Jmeter you just need to
Download groovy-all.jar
Drop the file to "lib" folder of your JMeter installation
Restart JMeter
See Beanshell vs JSR223 vs Java JMeter Scripting: The Performance-Off You've Been Waiting For! guide for more detailed explanation and scripting best practices.
I am working for a startup. We need to Load test 500 requests for sec and 10,000 concurrent users at any given time.
We cannot afford loadrunner or any of these fancy softwares. We tried to implement it Jmeter. But it is unable to process this load.
Is there any cheaper software / online website, which can help with all the correlation issues and run the above load?
You can try our new service http://loadme.socialtalents.com
In case it is close to your needs but you need more threads please let me know
SmartMeter supports automatic correlations in the Light (free) version. It is based on JMeter, so in order to achive the desired load, follow #UBIK LOAD PACK tips.
JMeter can support this load without any issue, ensure you follow best-practices:
https://www.ubik-ingenierie.com/blog/jmeter_performance_tuning_tips/
http://jmeter.apache.org/usermanual/best-practices.html
If you don't have time to work on this, then select one of the available SAAS:
http://redline13.com
http://flood.io
...
I am using selenium-2.30.0 to run a single test(on windows) which runs for many hours (~ 8 Hrs). I was using the FF driver, but it runs out of memory after just 45 minutes or less, & the test execution just hangs. I was unable to use HTMLUnitDriver (i thought a pure java solution was the answer) to run the same way as the FF driver (as it needs to wait for page loads & I definitely didn't want to put random thread sleeps in my code or implement any new function by extending the HTMLUnitDriver).
I cannot break the test case to multiple smaller units.
I cannot reload the driver as and when i see heavy memory utilization
Is there any way to get this working?
I found this link:creating-firefox-profile-for-your-selenium-rc-tests, & was quite helpful. Created a new firefox profile with absolute minimal settings, & the test has been running without issues for the last 4 hours. Thanks a lot for the help guys !
What sort of testing are you doing? Selenium is used primarily for Acceptance tests. It sounds like what you're trying to do is more like a soak test on your system.
If that's the case, take a look at JMeter, it's much more suited to this type of work. However, a rather significant difference between the two technologies is that JMeter works at the protocol (HTTP Request) level as opposed to Selenium's use of the rendered HTML.
What does crash, your Java test code or Firefox itself? If it's the Java test code, then are you sure that you're not leaking memory? Or maybe the memory leak is in the server side?
I want to run a Load test on my Production server to verify that the server can handle 1 million requests per 10 seconds using JMeter. How to configure JMeter Thread group for 1 million request in 10 seconds? How many client I need to do this test?
Please share your valuable experience if you have experience doing this type of load test.
First, you should ensure you really need 1 million requests in 10 seconds (what kind of site are you testing ?).
Then if you want to use JMeter, ensure:
You use last version
You tune memory correctly
You will certainly have to use distributed testing if not using Cloud
Follow best practices
http://www.dzone.com/links/r/see_how_to_make_jmeter_run_thousands_of_threads_w.html (Disclaimer : I'm the writer of this)
http://jmeter.apache.org/usermanual/best-practices.html
You might try Constant Throughput Timer to make a kind of Barrier
Alternatively you can try "Delay thread until creation"
And finally try a Cloud solution to get to this load, see this french blog on all kind of issues you will face in all fields (not only load software):
http://blog.milamberspace.net/index.php/2012/07/14/rapport-de-tres-gros-test-de-charge-avec-la-solution-blazemeter-1161.html)
But I never tried up to this load, so I cannot tell if it will work and it is kind of unexplored field
you can accomplish this using Gatling and scaling out to several machines that would run the test in parallel. in the end Gatling can aggregate the results into 1 report.
Gatling documentation dosent provide much info for this :
http://gatling.io/docs/1.5.6/user_documentation/cookbooks/scaling_out.html
but you can check my blog post to see how this can be done (ive wrote a script for this purpose)
Blog - http://www.nimrodstech.com/gatling-cluster-load-testing/
Gist - https://gist.github.com/Nimrod007/5cfed34eeffedfd7ec76
Looks like you'd better look onto another, more suitable tool for such kind of scenario,
e.g. Tsung
Tsung homepage
Tsung # github
Scaling to 30K: Tsung
or at least Gatling instead:
Gatling homepage
Gatling: scaling out
Perhaps if you would like to use jmeter in any case you can look onto BlazeMeterLoad Testing Cloud solution.