Test environment also includes business requirements? I believe this is what we call business environment?
The degree of similarity between the hardware, software and network configuration of the application under test conditions and under actual production conditions is often a significant consideration when deciding what performance tests to conduct and what size loads to test. It is important to remember, it is not only the physical environment that impacts performance testing, but also the business/project environment. The business environment includes things like business drivers where as project environment includes such items like the approach that will be used for performance testing .
In addition to the physical, project and business environments, you should consider the following when identifying your test environment:
- Identify the amount and type of data the application must be seeded with . Determine what kind of data the application requires and consumes at each step of activity through the system. How many records are moving throughout the end-to-end transaction? How big are the queried results sets? How much unique data will I need to have in the database in order to emulate real-world conditions?
- Identify critical system components. Does the system have any known bottlenecks or weak points? Are there any integration points that are beyond your control for testing?
Identify the Physical Environment
The key factor in identifying your test environment is to completely understand the similarities and differences between the test and production environments. Some critical factors to consider are:
- Machine configurations
- Machine hardware (processor, RAM, etc.)
- Overall machine setup (software installations, etc.).
- Network architecture and end-user location.
- Cluster and DNS configurations
Considerations:
- Although few performance testers install, configure, and administrate the application being tested, it is beneficial for them to have access to the servers, software, and administrators who do.
- Recommendations for configuring the load generation tool:
- Performance testing is frequently conducted on an network segment to prevent disruption of other business operations. If this is not the case for your test project, ensure that you obtain permission to generate loads during certain hours on the available network.
- Get to know the IT staff. You will likely need their support to perform tasks such as monitoring overall network traffic and configuring your load-generation tool to simulate a realistic number of Internet Protocol (IP) addresses.
- Remember to figure out how to get load balancers to treat the generated load as though it were an actual user load.
- Check configuration in load balancers for priority and percentage of requests. Monitor resource utilization across servers in the load balancer during a load test to validate load is distributed.
- Validate name resolution with DNS. This may account for significant latency when opening database connections.
- Validate that firewalls, Domain Name System (DNS), routing, and so on treat the generated load like a load that would typically be encountered in an actual production environment, and that the test environment is treated similarly to the production environment.
- Determine how much load you can generate before the load generators becomes a bottleneck. Typically load generators can bottleneck in processor and memory
- It is often appropriate to have systems administrators set up resource monitoring software, diagnostic tools, and other utilities on the servers hosting the Application Under Test (AUT).


No comments:
Post a Comment