小试FlexUnit(Flex单元测试)

最近学习flex,本人是从C/S架构过来的,用起来有很多的熟悉感,为了公司后续的开发工作顺利开展,了解了flex单元测试,感觉还是很不错的,费话不说了,过程如下:

1.下载FlexUnit 0.9
[url]http://opensource.adobe.com/wiki/display/flexunit/Downloads[/url]

2.解压后有两个目录,asDoc是API文档,Bin是SWC库
[img]/upload/attachment/66652/f2c4e4f2-55af-3ec1-a2b3-4c41a8b96e55.jpg[/img]


3.新建项目,如下图设定,按“Finish”新建项目

[img]/upload/attachment/66655/e141843c-ed1b-3464-854a-32298d328e31.jpg[/img]


4.右键项目TestFlexUnit->Properties->Flex Build Path,点击“Add Swc…”,加入flexUnit的swc包。
[img]/upload/attachment/66656/699ed30a-1ed0-396a-8699-c53766f22837.jpg[/img]


5.新建一个需要测试的业务逻辑类(ActionScript类),例下:

[img]/upload/attachment/66657/6e3e0985-566e-3a68-8815-c40ebd12436d.jpg[/img]

package
{
public class Arithmetic
{
/**
* 加法
* author:LiuYX
*/
public static function add(a:Number,b:Number):Number{
return a + b;
}

/**
* 减法
* author:LiuYX
*/
public static function subtract(a:Number,b:Number):Number{
return a - b;
}
}
}


6.继承FlexUnit的TestCase类,新建测试业务的ArithmeticTest类,如下:
package
{
import flexunit.framework.TestCase;
import flexunit.framework.TestSuite;

public class ArithmeticTest extends TestCase
{
/**
* 重写TestCase的构造器
* author:LiuYX
* date:2009-01-07
*/
public function ArithmeticTest(methodName:String)
{
//回调TestCase的构造器
super(methodName);
}

/**
* 静态方法,返回这个TestCase包含的TestSuite
* author:LiuYX
* date:2009-01-07
*/
public static function Suite():TestSuite{
var suite:TestSuite = new TestSuite();

suite.addTest(new ArithmeticTest("testAdd"));
suite.addTest(new ArithmeticTest("testSubtract"));

return suite;

}

/**
* TestCast的测试方法,测试业务类的加法逻辑
* author:LiuYX
* date:2009-01-07
*/
public function testAdd():void{
var result:Number = 0;

result = Arithmetic.add(1,2);
assertTrue("和为 3",result == 3);

result = Arithmetic.add(2,2);
assertEquals("和为 4",4,result);
}

/**
* TestCast的测试方法,测试业务类的减法逻辑
* author:LiuYX
* date:2009-01-07
*/
public function testSubtract():void{
var result:Number = 0;
result = Arithmetic.subtract(2,1);
assertTrue("结果为 1",result == 1);

assertTrue("结果为 0",0,Arithmetic.subtract(2,2));

}


}
}

7.修改TestFlexUnit.mxml,加入flexunit的TestRunnerBase。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:flexunit="flexunit.flexui.*"
layout="absolute"
creationComplete="onCreationComplete()">
<mx:Script>
<![CDATA[
import flexunit.framework.TestSuite;

/**
* 创建整个项目的TestSuite
* author:LiuYX
*/
private function createSuite():TestSuite
{
/*组建TestSuite*/
var suite:TestSuite = new TestSuite();
suite.addTest(ArithmeticTest.Suite());
/*TODO:在这加入其它TestSuite*/

return suite;
}
/**
* 调用TestRunner进行测试
*/
private function onCreationComplete():void
{
/*代入TestRunnerBase进行测试*/
testRunner.test = this.createSuite();
testRunner.startTest();
}
]]>
</mx:Script>
<!-- flexunit的TestRunnerBase界面组件 -->
<flexunit:TestRunnerBase id="testRunner" width="100%" height="100%" />
</mx:Application>


运行结果:

[img]/upload/attachment/66661/72d6b645-2261-3d04-a3eb-b84fa25553db.jpg[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值