The runner should be modified to allow for synchronous and asynchronous runs so that the client could pick the appropriate mode.
Currently, the test runner executes a request to perform a test run synchronously (i.e. it will run all the tests and then return control to the client).
The tests in a test run can take a long time to execute, so this solution is less than optimal.
When setting the runner to run in asynchronous mode, a client should be allowed to specify a function pointer as an event handler for the 'Test Case Completed' event (to be fired after each test case during the run is completed). |