The resources required for running integration tests on real servers depend on several factors, such as:
The number of tests: More tests typically require more resources to be provisioned.
The complexity of your infrastructure: If your infrastructure requires many components, such as virtual machines, databases, and load balancers, more resources will be needed.
Test parallelism: Running tests in parallel can speed up execution, but it may also require more resources.
Test isolation: Creating separate environments for each test or group of tests can help ensure test reliability, but it may also require more resources.
Test duration: Longer-running tests might need servers to be provisioned for extended periods.
The exact amount of resources needed can vary widely depending on your specific use case. You can estimate the resources by analyzing your tests and infrastructure requirements. Additionally, some cloud providers offer cost estimation tools to help you understand the potential costs involved in provisioning resources for testing.
It's essential to clean up the resources after the tests are completed to minimize costs. Both Pulumi and Ansible provide mechanisms to destroy resources after they are no longer needed.
Keep in mind that using real servers for integration testing can incur costs depending on the cloud provider and the resources you provision. Make sure to monitor your usage and optimize your tests to minimize expenses.