1. A system for managing a plurality of clients, the system comprising: a computer system comprising at least one processor and associated memory, wherein the computer system is programmed to execute a controller, and wherein the controller is programmed to: receive a first request message from a first client among the plurality of clients that announces availability of the first client to be managed by the controller, wherein the first request message is formatted as a request, and wherein the first request message comprises information that identifies one or more distributed test capabilities of an application running on the first client, wherein the distributed test capabilities are selected from a group of capabilities used when testing a system under test selected from a group including load testing, mutation testing or fuzz testing; select a distributed test command to be executed by the first client based at least in part on the information that identifies the capabilities of the application running on the first client; send a response message to the first client, wherein the response message is formatted as a response directed to the application running on the first client, and wherein the response message comprises information describing the distributed test command to be executed at the first client; receive a second request message from the first client, wherein the second request message comprises information describing a result of the distributed test command selected to be executed at the first client.