flexUnit4 下载不下来,下了个0.9的版本(中间的版本呢??),照着别人的写了个demo。
/************业务方法******************/
package com.xx
{
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;
}
/**
* 指定时间的num天前的日期
* num就是要加的天数
* mydate 指定日期
*/
public static function addDay(num:int, mydate:Date):Date
{
var returnDate:Date = new Date(mydate.time);
returnDate['date'] += num
return returnDate;
}
}
}
/************测试方法******************/
package com.xx
{
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"));
suite.addTest(new ArithmeticTest("testAddDay"));
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));
}
public function testAddDay():void{
var result:Date;
result = Arithmetic.addDay(1,new Date());
assertTrue("结果不相等",result != new Date());
}
}
}
/************前端调用代码******************/
<?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 com.xj.ArithmeticTest;
import flexunit.framework.TestSuite;
/**
* 调用TestRunner进行测试
*/
private function onCreationComplete():void
{
/*代入TestRunnerBase进行测试*/
testRunner.test = ArithmeticTest.Suite();
testRunner.startTest();
}
]]>
</mx:Script>
<!-- flexunit的TestRunnerBase界面组件 -->
<flexunit:TestRunnerBase id="testRunner" width="100%" height="100%" />
</mx:Application>
/************调用过程简述******************/
TestRunnerBase.test = TestSuite ---->TestSuite.addTest (TestCase)--->TestCase----->实现Test接口
-----------代码摘自 http://liuyxit.iteye.com/blog/311480
/************业务方法******************/
package com.xx
{
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;
}
/**
* 指定时间的num天前的日期
* num就是要加的天数
* mydate 指定日期
*/
public static function addDay(num:int, mydate:Date):Date
{
var returnDate:Date = new Date(mydate.time);
returnDate['date'] += num
return returnDate;
}
}
}
/************测试方法******************/
package com.xx
{
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"));
suite.addTest(new ArithmeticTest("testAddDay"));
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));
}
public function testAddDay():void{
var result:Date;
result = Arithmetic.addDay(1,new Date());
assertTrue("结果不相等",result != new Date());
}
}
}
/************前端调用代码******************/
<?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 com.xj.ArithmeticTest;
import flexunit.framework.TestSuite;
/**
* 调用TestRunner进行测试
*/
private function onCreationComplete():void
{
/*代入TestRunnerBase进行测试*/
testRunner.test = ArithmeticTest.Suite();
testRunner.startTest();
}
]]>
</mx:Script>
<!-- flexunit的TestRunnerBase界面组件 -->
<flexunit:TestRunnerBase id="testRunner" width="100%" height="100%" />
</mx:Application>
/************调用过程简述******************/
TestRunnerBase.test = TestSuite ---->TestSuite.addTest (TestCase)--->TestCase----->实现Test接口
-----------代码摘自 http://liuyxit.iteye.com/blog/311480