问题标签 [asunit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1992 浏览

apache-flex - AsUnit 与 FlexUnit——哪个“更好”?

我现在正在学习 ActionScript/Flex,是时候开始单元测试了。我的阅读表明有两个主要框架:FlexUnit 和 AsUnit。

有什么理由学习其中一个吗?一个,在某种程度上,“更好”吗?

0 投票
1 回答
515 浏览

apache-flex - 从 Ant 运行 AsUnit 运行器

如何从 Ant 运行 AsUnit 测试运行程序?

我在 Mac OS 上,所以我使用:

我怎样才能使这个跨平台?

0 投票
1 回答
501 浏览

apache-flex - 在 Flex Builder 中使用 AsUnit 对库进行单元测试

我一直在尝试设置一种使用 Flex Builder 对 flex 库进行单元测试的工作方法。

我尝试建立一个标准的 flex lib 项目并使用 Ant 编译和运行单元测试。但这意味着当出现问题并且我想使用 flex builder 调试器时,我不能这样做。

所以我的下一个计划是将库设置为普通的 as3/flax/air 应用程序,因为我可以使用主类的概念来运行单元测试。然后我可以使用 Ant 编译实际的库代码。

我还可以设置一个单独的配套项目,其唯一任务是在 lib 上运行单元测试。但这有点尴尬,因为现在每个库都需要管理两个项目。

这一切对我来说似乎有点混乱。其他人如何开发 flex 库并使用单元测试来测试/开发/调试代码?

0 投票
2 回答
596 浏览

actionscript-3 - 如何在 MAC 中使用 FDT 和 AS3 进行 TDD?

我想将我的环境设置为在 ActionScript3 中进行测试驱动开发。我尝试使用 AsUnit,但我不知道如何在 MacOS 中正确安装它。

谢谢!

0 投票
1 回答
230 浏览

actionscript-3 - FlashDevelop ASMock 集成错误

我最近一直在尝试将 ASMock 1.0 与 ASUnit4.0 一起使用(我从 ASMock 网站上将它们一起抓取了包)并添加了两个 .swc 组件(asmock-v1.0.swc 和 asmock-v1.0 -asunit-v4.0.swc) 到我的 FlashDevelop 项目的 lib 文件夹中。然后我右键单击它们中的每一个,将其添加到库中。最后,我在“附加编译器选项”字段的“项目”->“属性”->“编译器选项”中添加了“-includes asmock.integration.asunit.ASMockRunner”参数。

当我构建项目时,我收到这些错误:

...\lib\asmock-v1.0-asunit-v4.0.swc(asmock.integration.asunit:ASMockRunner) 错误:找不到类型或不是编译时常量:[asunit.framework]::亚军。

...\lib\asmock-v1.0-asunit-v4.0.swc(asmock.integration.asunit:ASMockMetadataTools) 错误:找不到类型或不是编译时常量:反射。

...\lib\asmock-v1.0-asunit-v4.0.swc(asmock.integration.asunit:ASMockMetadataTools) 错误:找不到类型或不是编译时常量:ReflectionVariable。

...\lib\asmock-v1.0-asunit-v4.0.swc(asmock.integration.asunit:ASMockMetadataTools) 错误:找不到类型或不是编译时常量:ReflectionVariable。

...\lib\asmock-v1.0-asunit-v4.0.swc(asmock.integration.asunit:ASMockMetadataTools) 错误:找不到类型或不是编译时常量:ReflectionVariable。

...\lib\asmock-v1.0-asunit-v4.0.swc(asmock.integration.asunit:ASMockMetadataTools) 错误:找不到类型或不是编译时常量:ReflectionMetaData。

我还忘了补充说 FlashDevelop 项目是一个 Actionscript 项目。

如果有人对如何解决这些错误有任何想法,我将不胜感激!

0 投票
1 回答
74 浏览

actionscript-3 - 跨域从 swf 访问对象和变量

我正在尝试从a.com上的 atest.swf在 b.com 上访问一个变量。parent.swf

测试.swf:

父.swf:

我可以像这样访问 swf。但是如何访问和更改var testtest.swf 中的文件?

0 投票
0 回答
65 浏览

actionscript-3 - asunit 文档类空阶段引用

在为我的项目的主类 asunit 编写单元测试时,一直向我抛出这个错误:

TypeError: Error #1009: Cannot access a property or method of a null object reference.

每当我使用舞台参考时。我理解为什么会发生这种情况,因为 .fla 的关联类不再是主类,因为它现在是测试运行类,这意味着 main 不再可以直接访问舞台。

通常我不会测试主类,因为它所做的只是创建其他对象并将阶段传递给它们,但是阶段的使用在这些类中已经根深蒂固,所以我也需要在这些类中正确引用阶段,否则我将无法单元测试单个事物。

我想知道以前是否有人遇到过这个问题,以及是否有一种解决方法可以让不同的班级访问舞台,最好不要过多地改变班级。(不得不改变一个类的逻辑以便我可以对其进行单元测试,这将是一种耻辱)

0 投票
0 回答
110 浏览

actionscript-3 - mxmlc - 警告:无法解析损坏的数据 - 一旦项目达到一定大小?

我有一个长期运行的项目,它被编译为发布模块,但测试套件可能会为每个模块运行所有测试。

这个项目相当大——目前大约有 1250 个测试用例(类),总共大约有 4000 个类。这是一个 asunit3 项目,因此所有测试用例都列在一个 AllTests.as 文件中。

显然,我不会一直运行所有测试——该套件需要几分钟才能运行,所以大部分时间我都在运行集中测试,但我每天运行几次包括集成测试等的完整套件.

在我最后几个小时的工作中,我不再能够成功构建和运行整个套件。我们有一个脚本允许我们使用包名或类名过滤测试,所以我可以 testpackage['modules'] 或 testpackage['com'] 等。我也可以排除包 - testallexcept['utils'] 等等上。

我可以运行任何和所有测试子集,但是如果我尝试测试整个集合,我会得到:

如果我只过滤掉几个类,那么我可以让 swf 编译和打开,但它只是一个白盒,实际上并没有运行测试。如果我过滤更多,那么一切都很好。我过滤哪些似乎并不重要——只要我取出大约 15 个测试用例,一切都很好(尽管我还没有找到一个确切的数字,它是 ok / not ok 之间的界线。)

我正在编译-benchmark并获得以下输出:

由于峰值内存使用量超过了 mxmlc 中的默认堆,我将其增加到

这似乎没有帮助。

asunit3 和 projectsprouts 的设置方式将所有测试放在一个 AllTests.as 文件中。这现在超过 2500 行,并导入所有 1250 个测试用例。

在对班级数量、班级长度、一个班级的进口数量等方面的硬性限制方面,我有什么遗漏吗?或者除了java的VM堆之外我可以更改的任何设置?我正在使用 Flex 4.2 mxmlc 编译器。

显然,我可以通过一个脚本来解决这个问题,以运行一系列子集而不是一个套件,但我想了解为什么会发生这种情况。

有什么线索吗?


基于来自 twitter 的 Qs 的一些额外信息:

  • 我正在运行 Mac OS X 10.8.5
  • mxmlc 通过命令行运行
  • 我试过强制它使用 32 位运行时 - 没有变化
  • 我已将 mxmlc 切换为使用无头模式,也没有变化