I have a simple java application that runs on my computer. It's not connected to the internet, but it is connected to a MySQL database on my localhost.
All it does is read and write to and from my database. It generates a few random numbers, takes information from one class and passes it over to the other class and such. It's very simple.
My question is, how do I perform Performance testing on it? There are some tools available but I haven't found one suitable for my application.
I'm not even sure I can perform this kind of testing on it ...
Is it possible to do such testing on such a simple java application? If yes, which tool should I use (if any?)?
2 Answers 2
I believe you should split your testing into 2 phases
- Application profiling using profiling tools, either open source or paid like YourKit or JProfiler
- Standalone database load testing. You can use any load testing tool which supports JDBC protocol, i.e. Apache JMeter. See The Real Secret to Building a Database Test Plan With JMeter article for details.
-
+1 for Jmeter its a broadly used tool that should give insight to the situation described as well.Leon– Leon2017年09月06日 11:12:56 +00:00Commented Sep 6, 2017 at 11:12
For applications similar to this in the past what I would do is custom build a framework that executes the code in rapid succession. This can be done by using your current integration tests (if any) and setting them up to execute repeatedly over x amount of hours or x times.
I always built out custom frameworks, multi-threaded, wrapped in a monitor and then allowed the execution to run. I also built out a basic Swing based UI which allowed me to adjust the settings (IE threads, execution time) and monitor the results.
You will also want to create a wrapper which stores data like the amount of consecutive threads, the average response time, the high-low response times and the total amount of requests sent and have it displayed and/or logged.