Как я могу модульно протестировать приложения Flex из среды IDE или сценария сборки?

StackOverflow https://stackoverflow.com/questions/2222

Вопрос

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

Кроме того, существуют ли какие-либо другие ресурсы о том, как сделать гибкую разработку "правильным способом", помимо Микроархитектура Кэрнгорма пример?

Это было полезно?

Решение

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

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

<target name="run-tests" depends="compile-tests">
  <flexunit swf="${build.home}/tests.swf" failonerror="true"/>
</target>

Другие советы

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

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

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top