Apache flex FlashBuilder中Flex/Flash库的单元测试

Apache flex FlashBuilder中Flex/Flash库的单元测试,apache-flex,flash,unit-testing,swc,Apache Flex,Flash,Unit Testing,Swc,对于一个普通的Flash/Flex应用程序,我会在我的应用程序项目中包括我的单元测试(可能在主src文件夹旁边的Tests源文件夹中)。然后我有两个应用程序入口点:应用程序和它的测试 人们是如何为他们的Flex库项目做到这一点的?你知道,就是产生SWC文件的那种。据我所知,您不能为这些项目设置一个可执行的入口点(运行测试)。如果我们假设您需要一个mx:Application入口点来运行单元测试,那么生成一个单独的应用程序项目来运行测试似乎是有意义的 您真的希望在编译的SWC中包含单元测试吗?(对

对于一个普通的Flash/Flex应用程序,我会在我的应用程序项目中包括我的单元测试(可能在主src文件夹旁边的Tests源文件夹中)。然后我有两个应用程序入口点:应用程序和它的测试


人们是如何为他们的Flex库项目做到这一点的?你知道,就是产生SWC文件的那种。据我所知,您不能为这些项目设置一个可执行的入口点(运行测试)。

如果我们假设您需要一个mx:Application入口点来运行单元测试,那么生成一个单独的应用程序项目来运行测试似乎是有意义的


您真的希望在编译的SWC中包含单元测试吗?(对于一个应用程序来说,这不会是一个问题,因为它们可能没有被引用,但对于一个SWC库,我认为如果它们在某个文件夹层次结构中,它们会被编译)

目前没有一种方法来测试库项目。您必须有一个应用程序作为测试的入口点。这对于Flash Builder 4来说是一个很好的选择。

在Flash Builder Beta 1之后的版本中,您可以从库项目中编写和执行Flexunit测试


您可以使用FlexUnit的IDE集成功能,从上下文菜单中选择项目、文件夹、类或方法,并使用“执行Flex单元测试”。这将创建所需语法的应用程序文件,运行应用程序并在FB中显示结果。您甚至可以从结果中进行选择,并在需要时运行测试

通常,Flash Builder只允许从Flex/AIR应用程序使用调试器,而不允许从库项目使用调试器。所以这里最好的做法是将库加载到Flex应用程序中,并在那里编写+调试测试

以下是能够在启用调试/单步执行的情况下测试库项目的分步说明:

  • 创建要测试并调试的Flex库项目
  • 创建一个普通的、空的Flex应用程序。我们将在这个虚拟Flex应用程序中编写测试,以便利用调试功能
  • 将库的构建路径设置为Flex应用程序的“libs”文件夹,以便将最新代码构建到Flex应用程序加载的swc中

  • (可选)设置 “参考”的Flex应用程序 项目中的图书馆项目 属性->项目引用,此 确保首先生成库代码

  • 在Flex中编写测试 应用程序
  • 调试并运行测试:您 应该能够逐步通过你的库 源代码!很好
  • 或者,一旦您对测试感到满意,您的测试就都很好了 将您的测试复制回 库项目将所有库的关联代码保存在一个项目中。确保在实际的库swc中没有包含测试类

  • 无论如何,我都是这样做的。

    不,您可以选择将哪些文件编译到库SWC(项目属性->Flex库构建路径)中。与此解决方案类似,它也有助于将测试保持在源路径之外。