【问题标题】:Flex Unit 4 -- Hello World弹性单元 4——你好世界
【发布时间】:2010-10-18 15:54:59
【问题描述】:
我想使用 Flex Unit 4 Suite。
我真的没有任何单元测试经验。
我下载了Turnkey 项目,但有点不知所措。
我基本上只想从创建一个简单的 hello world 单元测试开始。
如果我有一个名为 MyClass 的类,它有两个方法 square() 和 cube()。
我想像这样创建一个单元测试:
public class MyTest
{
public function testMyClass():void
{
var myClass:MyClass = new MyClass();
assert(myClass.square(7) == 49);
assert(myClass.cube(7) == 343);
assert(myClass.square(5) == 50); // should fail
}
}
我怎样才能让它工作?
【问题讨论】:
标签:
apache-flex
unit-testing
flexunit4
【解决方案1】:
将一个新应用程序添加到您的 Flex 项目 - 使用后缀“UnitTest.mxml”命名它。添加对 TestRunnerBase 的引用,并在创建完成时启动 TestRunnerBase。这应该可以帮助您开始:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:flexunit="flexunit.flexui.*" creationComplete="init();"><mx:Script>
<![CDATA[
import flexunit.framework.TestSuite;
import FlexUnit.*;
private function init():void{
test.test = initSuite();
test.startTest();
}
private function initSuite():TestSuite{
var suite:TestSuite = new TestSuite();
suite.addTestSuite(testMyClass);
return suite;
}
]]>
</mx:Script>
<flexunit:TestRunnerBase id="test" width="100%" height="100%" />
</mx:Application>
【解决方案2】:
所以问题是您的测试甚至没有运行?在某个时候,某处,您应该会看到测试结果的显示,无论它们是通过还是失败。
我个人使用 ASUnit。前几天我在一个 Flex 项目中——这是我第一次在 Flex 项目中使用 ASUnit——当我按下编译按钮时,有人问我是否要启动我的应用程序,或者我是否想要而是启动 ASUnit 测试运行器。
所以是的,您的测试必须以某种方式手动调用,就像 adamcodes 建议的那样。