Мы сделали нечто подобное, чтобы FlexUnit работал с CruiseControl.net (сервер непрерывной интеграции).
В нашей реализации приведенный ниже код выполняется в обработчике FlexEvent.CREATION_COMPLETE класса Application.
Как вы выводите результаты модульных тестов, полностью зависит от вас. Наша реализация использовалась как с AIR, так и с Zinc3, и обе они выводят XML-представление, дружественное к NUnit, и затем выходят из приложения (с кодом выхода -1, если какие-либо тесты не пройдены).
// import mx.core.Application;
// import flexunit.framework.*;
// class AutomatedTestHarness extends Application implements TestListener
private function creationCompleteHandler(event : Event) : void
{
this._result = new TestResult();
this._result.addListener(this);
var testSuite : TestSuite = new TestSuite();
this.addUnitTests(testSuite);
testSuite.runWithResult(_result);
}
/**
* Implement these as part of TestResult.addListener
* If you want to output xml after the tests run, do so here
* (Tip: Count tests in endTest and compare the count to testSuite.countTestCases()
* to find out when all tests have completed)
*/
function startTest(test : Test) : void {}
function endTest(test : Test) : void {}
function addError(test : Test, error : Error) : void {}
function addFailure(test : Test, error : AssertionFailedError) : void {}