try {
service.run(false, true, new IRunnableWithProgress() {
public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
monitor.beginTask("Running tests...", 4);
try {
IDeployResultExt results = serviceLocator.getRunTestsService().runTests(resource, monitor);
processRunTestResults(results, resource);
} catch (InterruptedException e) {
throw e;
} catch (Exception e) {
throw new InvocationTargetException(e);