public void run() {
        try {
            doResourceSetup();
            doRunTest();
        } catch (Throwable e) {
            // TODO [Barry][Code Review] [Add exception verification]
            e.printStackTrace();
            dynamicTestContext.fail(e);
        } finally {
            try {
                dynamicTestProcessor.incrementCounter();
            } catch (Throwable ignore) {
            }
            try {
                dynamicTestContext.report();
            } catch (Throwable ignore) {
            }
            try {
                dynamicTestExecutor.logResult(dynamicTestContext);
            } catch (Throwable ignore) {
            }
            try {
                dynamicTestProcessor.afterDynamicCase(context, dynamicTestContext);
            } catch (Throwable ignore) {
            }
            try {
                dynamicTestProcessor.cleanupResourcePerCase(context);
            } catch (Throwable ignore) {
            }
        }
    }