http://code.google.com/p/as3flexunitlib/ http://opensource.adobe.com/wiki/display/flexunit/Flexunit FlexUnitはFlex,ActionScript3のUnitTestフレームワークです。 テスト結果は、FlexのGUIで確認することができます。 試してみたバージョンは、v0.9です。 以前のバージョンに比べ、GUIがちょっとかっこ良くなってますねー。 マウスをグリグリ動かすようなテストは多分書けないと思いますが、ActionScript3のクラスのテストするにはよさそうです。 大きなプロジェクトではAntで実行するといいかもしれないです。 http://weblogs.macromedia.com/pmartin/archives/2006/06/new_flexunit_an.html テストケースの書き方提供されている、FlexUnit.swcにはflexunit.framework.TestCaseというクラスが含まれています。このクラスを継承してTestCaseを作成していきます。 テストメソッドは、メソッド名が testから始まる名前にすることで反応します。 この仕様はちょっと古くさい感じがするので、もしかしたらメタタグなどで指定できる方法がある(or今後のバージョンで出てくる)かもしれません。 Runnerの書き方TestRunner.mxml<?xml version="1.0" encoding="utf-8"?> <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" xmlns:flexunit="flexunit.flexui.*" creationComplete="onCreationComplete()"> <mx:Script source="TestRunner.as" /> <!-- FlexUnit GUI Component --> <flexunit:TestRunnerBase id="testRunner" width="100%" height="100%" /> </mx:WindowedApplication> TestRunner.as import flexunit.framework.TestSuite; BankAccountTestというのは作成したTestCaseのクラス名です。// Create the test suite and run the tests private function onCreationComplete():void { testRunner.test = createSuite(); testRunner.startTest(); } // Creates the test suite to run private function createSuite():TestSuite { var testSuite:TestSuite = new TestSuite(); testSuite.addTestSuite( BankAccountTest ); return testSuite; } TestRunnerをAIRで実行すれば画面が起動し、テストが開始されるようになります。 テストモジュールAIR GEAR v1.0.1 で試してみましたので、その構成のご紹介。フォルダ構成はこんな感じ。 BuildPropertyでは、srcとtestとでコンパイル方法を別途設定してみました。 srcは実際のアプリケーションのファイルを配置し、testの方にはTestRunnerやTestCaseを配置しています。 テストで動かしてみたプロジェクトをFlexUnitSample.zipに置いておきます。 AIR GEAR v1.0.1以上が入ったEclipseにて、File→Importの画面にて、General→ExistingProjects into Workspaceを選んでインポートしてみてください〜! テストの実行は、プロジェクトの右クリック→Run As→AIR Applicationで実行できます。 何行目でエラーが発生したか?というのは、コンパイル時に -debug オプションをつけてあげると表示されるようです。 基本は、1つのテストケースの内容は少なくするのが基本ですが、StackTraceだけで原因が分からない場合にはdebugオプションをつけるのも手ですね。 AIR GEARでは、上記の図の Options の欄に -debug を追加してあげればOKです。 +configname=air test/TestRunner.mxml -debug |




