3

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

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

4

4 回答 4

6

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

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

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

  4. 或者,在 Project Properties->Project References 中将 Flex 应用程序设置为“引用”库项目,这样可以确保首先构建库代码。

  5. 在 Flex 应用程序中编写测试
  6. 调试并运行你的测试:你应该能够单步调试你的库源代码!好的。
  7. 或者,一旦您对测试感到满意,就可以将您的测试 复制回库项目,以将所有库的相关代码放在一个项目中。确保您没有在实际库 swc 中包含测试类。

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

于 2009-11-21T08:19:49.847 回答
2

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

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

于 2009-09-01T09:29:58.957 回答
1

在 Flash Builder Beta 1 及更高版本中,您可以从库项目中编写和执行 Flexunit 测试。

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

于 2009-10-21T05:00:02.527 回答
1

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

于 2009-09-01T15:19:32.430 回答