Как выполнить модульное тестирование приложений Flex из среды IDE или сценария сборки? - PullRequest
16 голосов
/ 05 августа 2008

В настоящее время я работаю над приложением с интерфейсом, написанным на Adobe Flex 3. Мне известно о FlexUnit , но мне бы очень хотелось, чтобы это был модуль модульного тестирования для Ant / NAnt бегун, который интегрируется с IDE Flex Builder (AKA Eclipse). Один существует?

Кроме того, есть ли другие ресурсы о том, как сделать разработку Flex "правильным способом", кроме примера микроархитектуры Cairngorm ?

Ответы [ 4 ]

5 голосов
/ 12 августа 2008

Среда тестирования dpUint имеет встроенный тестовый прогон с AIR, который можно интегрировать со сценарием сборки.

Существует также мой FlexUnit комплект для автоматизации, который более или менее аналогичен FlexUnit. Он имеет макрос Ant, который позволяет запускать тесты как часть скрипта Ant, например:

<target name="run-tests" depends="compile-tests">
  <flexunit swf="${build.home}/tests.swf" failonerror="true"/>
</target>
3 голосов
/ 13 августа 2008

В моем проекте мы используем Maven для создания нашей Flex RIA и серверной части на основе Java. Для создания и тестирования приложения Flex мы используем плагины flex-mojos maven. Они отлично работают для нас, и я настоятельно рекомендую использовать Maven поверх Ant.

При этом, если вы уже используете Ant, может быть немного сложно перейти на Maven. Поэтому, если вы находитесь в таком положении, я бы порекомендовал использовать задачи flexunit, доступные здесь: Ant Task

Обе эти библиотеки делают в основном одно и то же: они запускают сгенерированное mxml-приложение flexunit test runner в окне и открывают сокет-соединение обратно в процесс сборки с помощью JUnit. Удивительно, но это работает довольно хорошо. Единственная проблема в том, что вы не можете запустить его без головы, поэтому, если вы хотите запустить сборку с CI-сервера, вы должны убедиться, что процесс имеет возможность запускать новые окна, иначе он не будет работать.

2 голосов
/ 12 августа 2008

О том, как правильно разрабатывать приложения Flex, я бы не стал слишком много смотреть на инфраструктуру Cairngorm. Он претендует на то, чтобы показать «лучшую практику» и так далее, но я бы сказал, что все наоборот. Он основан на использовании глобальных переменных и других вещей, которые вам следует избегать. Я обрисовал некоторые проблемы в своем блоге .

Я бы посоветовал вам взглянуть на Mate Framework , который содержит хорошую документацию и хорошие примеры, которые помогут вам в этом. Он использует Flex в полной мере, не полагаясь на глобальные переменные, такие как Cairngorm и PureMVC, и позволяет писать гораздо более свободный код.

0 голосов
/ 20 сентября 2008

Альтернативой FlexUnit являются AsUnit инструменты тестирования. Существуют версии для ActionScript 2 и 3. Он также имеет хорошую интеграцию с Project Sprouts , который представляет собой инструмент сборки для Flex и Flash, аналогичный ant, однако он использует задачи ruby ​​rake и включает превосходное управление зависимостями вдоль линии maven.

Никакой интеграции с IDE, о которой я знаю, однако.

...