2009/06/09

FlexUnit 4 - 進化したJUnit4ライクな単体テストフレームワーク

FlexUnit 4 beta 1.0が公開され、正式リリースが近そうなので、今回から数回に分けてFlexUnit 4を紹介していきます。

FlexUnitはFlexやActionScript 3(AS3)で作られたアプリケーションやライブラリの単体テストを実装するためのJUnit4ライクなフレームワークです。

現在、Adobe Open Sourceで公開されています。
http://opensource.adobe.com/wiki/display/flexunit/FlexUnit

Flex、ActionScriptの単体テストフレームワークにはFlexUnit以外にもいくつか存在していますので、FlexUnitの前に、FluintとAS3Unitを簡単に紹介しましょう。

Fluint
http://code.google.com/p/fluint/

Digital Primates社製(現在はOSS)の単体テストフレームワーク。
以前はdpUInt(Digital Primates Unit and Integration)という名前でした。
非同期処理のテスト、Cairngormのテスト、CI等が可能な点が特徴です。

FlexUnit 4にはその一部(org.fluint.sequenseパッケージ, org.fluint.uiImpersonationパッケージ)が取り込まれています。
ライセンスはMIT Licenseで公開されています。

AS3Unit
http://www.libspark.org/wiki/yossy/AS3Unit

Spark projectが公開している国産の単体テストフレームワーク。
JUnit4の移植で、テストケースがPOJOによる実装が可能な点が特徴です。(AS3だから、POJOじゃなくてPOAO??こんな言葉ないですね・・)
ライセンスはApache License Version 2.0で公開されています。

ここからはFlexUnitに話を戻しましょう。
これまでFlexUnitはバージョン0.9が最新だったのですが、先月、メジャーバージョンアップを遂げて、FlexUnit 4 beta 1.0まで今のところリリースされています。

2009/05/04 FlexUnit 4 alpha 1.0
2009/05/11 FlexUnit 4 alpha 2.0
2009/05/18 FlexUnit 4 beta 1.0

FlexUnitは0.9から4へとバージョンアップしたことで、いくつか大きな機能追加があるので、まずはそれらを紹介していきましょう。
「Major New Features of FlexUnit 4」をベースに進めていきます。

Major New Features of FlexUnit 4
http://opensource.adobe.com/wiki/display/flexunit/FlexUnit+4+feature+overview

FlexUnit 4はJUnit 4ライクになっていますので、Javaエンジニアに分かりやすくするため、JUnit 4の単体テストコードと比較しながら説明していきます。

1. Testメタデータ
2. Before, Afterメタデータ
3. BeforeClass, AfterClassメタデータ
4. 例外ハンドリング
5. Ignoreメタデータ
6. async
7. Hamcrest
8. Suiteメタデータ
9. ユーザー定義メタデータパラメータ
10. Theory, Datapoints, Assumptionsメタデータ
11. RunWithメタデータ
12. アダプタ
13. ユーザーインターフェースファサード


次回へ続く。


FlexUnit 4 - Testメタデータ
http://blog.air-life.net/2009/06/flexunit-4-test-metadata.html

0 件のコメント: