![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2008
Сообщений: 2
|
Заранее извиняюсь за некоторый сумбур и возможно еще путаюсь в терминологии.
сушествует флекс3 приложение - SomeApplication.mxml в котором описано несколько методов <mx:Script>
<![CDATA[
public var SomeVar:String = "Some Variable";
public finction Function1
{
}
public function Function2
{
}
public function ResultHandler
{
}
]]>
</mx:Script>
<mx:DataGrid id="dgrid" dataProvider="{ds}" width="100%" height="100%"
</mx:DataGrid>
UI реализован через тэги. есть одна важная деталь, ивент хэндлеры прицеплены через тэги
<mx:DataService id="ds" destination="some-destination"
result="ResultHandler(event)"/>
Делаю примерно так public var app : SomeApplication = new SomeApplication(); после этого конструктора можно получить доступ к методам и переменным, объявленым в коде, но графические элементы - как например datagrid инициализированы не будут. т.е. app.dgrid=null все бы хорошо, для этого экземпляра класса можно определить их app.dgCompany = new DataGrid(); но , проблема состоит в том, при обращении к дата_сервису отрабатывает хэндлер, описаный в тэгах оригинального приложения и в нем есть логика обращеная к неиницилизированым переменным - соответственно весь тест падает с ошибками. удалить эти хендлеры через removeEventListener нельзя, так как они заданы через тэги - вот тут референс http://livedocs.adobe.com/flex/3/htm...events_05.html собственно вопрос - как "доопределить" в данном случае визуальные компоненты - например дата грид. |
|
|||||
|
Немного юзал FlexUnit. Для тестов, лучше засунь эти две функции в отдельный Класс. Напиши для него отдельныйКлассТест наследуемый от TestUnit, что-ли, в котором опиши testFunction1 и для второй. Далее свое поведение реализуй. И тестируй.
__________________
Оптимизация производительности на уровне кода |
|
|||||
|
Регистрация: Dec 2008
Сообщений: 2
|
Спасибо за ответ, но в том и состоит суть юнит-тестирования, что бы сохранять целостность тестируемого кода а все возможные заглушки для реализации возможности тестирования кода писать в самих тестах.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 19:06. |
|
|
« Предыдущая тема | Следующая тема » |
|
|