Иногда нет возможности запускать тесты из консольного приложения, что делает невозможным логгирование вывода стандартными средствами. Что бы, к примеру, запущенная после коммита процедура сборки/тестирования, в случае ошибки, бросила в почту разработчикам лог с непрошедшими тестами.
Для решения на скорую руку был набросан простенький класс (чуть более чем полностью слизанный с TextTestRunner), позволяющий логгировать все в файл - FileTestRunner
Проверен на D2009.
Краткие заметки по ит-шным темам, с которыми я сталкиваюсь. Чаще это вопросы работы с СУБД и прикладной разработки.
Показаны сообщения с ярлыком dunit. Показать все сообщения
Показаны сообщения с ярлыком dunit. Показать все сообщения
понедельник, 29 марта 2010 г.
среда, 24 марта 2010 г.
Упрощение CheckException в DUnit с помощью анонимных функций
К сожалению, для проверки функции на возврат исключения возможен только для процедуры типа:
TTestMethod = procedure of object;Легким движением руки(наследником или правкой оригинального класса) для свежих версий Delphi упрощаем написание таких тестов:
procedure CheckException(AMethod: TTestMethod; AExceptionClass: TClass; msg :string = '');
TTestProc2 = reference to procedure;
TTestCase2 = class(TTestCase)
public
procedure CheckException2(AMethod: TTestProc2; AExceptionClass: TClass; msg :string = '');
end;
Пример использования:
...
CheckException2(procedure begin DirDelete(TestDir); end, EInOutError);
Подписаться на:
Сообщения (Atom)