Пожалуй начну жёсткую критику:
1. Проект под мавеном — это хорошо, но плохо что он не поддерживает
стандартную структуру каталогов проекта
2. Config.parseConfiguration() — зачем самомоу парсить? Для этого есть уже написанные библиотеки типа
Commons CLI для работы с коммандной строкой и
Commons Configuration для хранения настроек (естественно, это можно заменить на что-нибудь другое но посыл, я думаю, понятен)
3. Java code conventions нужно поддерживать — название класса isCloneable, имя пакета parserHandlers и
private List<SuiteResult> _results;
не есть хорошо
4.
if ( ... && command != -2)
— это ад. Что значит константа -2?
5. Нет такого слова Formater, нужно Formatter
6.
stringBuilder.append("[" + result.getTestSuiteName() + "]\r\n")
— используете StringBuilder и зачем-то конкатенируете строки
7.
if (Config.isRunnable() == false)
— так не пишут, используйте операцию отрицания.
8. Вместо ParserHelper и статичных методов опишите интерфейс — мало ли откуда входные данные придётся парсить (Естественно, в качестве дефолтной реализации используйте свой код для парсинга из xml)
9.
public Command[] getCommands() {
return commands.toArray(new Command[commands.size()]);
}
— почему бы список не возвращать? Вам действительно где-то нужен массив?
10.
} catch (CloneNotSupportedException ex) {
— выбрасывние CloneNotSupportedException — ошибра разработчиков java, с своих классах рекомендуется убирать из сигнатуры.
Я думаю остановлюсь на этом. В плане архитектуры настоятельно рекомендую глянуть как реализована, например, библиотека
jUnit