Method for Black Box and White Box Tests
Testing Internet applications for scalability and performance is different from testing software applications and code. SOA testing is focused on understanding how a service responds to increasing levels of concurrent requests, message sizes, and response handling techniques. The nature of Internet applications testing is black-box testing; it doesn't matter what happens inside the box.
Code profilers have their place in testing software and software developers often rely on them to learn the location of performance problems. However, black-box testing often yields more actionable knowledge, with these recommendations:
Create a baseline performance metric (a Scalability Index) using black-box performance tests showing Transaction Per Second (TPS) results, measured at the service consumer, with a variety of message sizes, message schema complexities, and concurrent request levels
Compare performance and scalability between multiple servers, consumers, or brokers by identifying each server's Performance Index and normalizing the test parameters to avoid reporting false slow-performance results. The test is run properly once the test lab has been calibrated in this Calibration step
Determine the Performance Index of the service under test and use white-box testing techniques to profile the largest time expensive object operations to handle requests. Optimize the software based on the profile
Continue optimizing the service by repeating steps 2 and 3
Run the Performance Index and analyze the results
This is the basis for understanding the Appvance method of testing services for scalability and performance
Last updated: February 22, 2023
If you have any feedback on this topic, please contact us at documentation@appvance.ai