`
ynp
  • 浏览: 428950 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

FlexUnit测试Demo

阅读更多
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
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics