Software component run-time characteristics are highly dependent on their actual deployment situation. Validating that software components meet required functional and non-functional properties is time consuming and for some properties quite challenging. We describe the use of "validation agents" to automate the testing of deployed software components to verify that component functional and non-functional properties are met. Our validation agents utilise "component aspects" that describe functional and non-functional cross-cutting concerns impacting software components. Aspect information is queried by our validation agents and these construct and run automated tests on the deployed software components. The agents then determine if the deployed components meet their aspect-described requirements. Some agents deploy an existing performance test-bed generation tool to run realistic loading tests on these components. We describe the motivation for our work, how component aspects are designed and encoded, our automated agent-based testing process, the architecture and implementation or our validation agents, and our experiences using them.