gpt4 book ai didi

apache-flex - 单元测试 Flex 事件处理程序

转载 作者:行者123 更新时间:2023-12-04 03:04:35 25 4
gpt4 key购买 nike

您使用什么方法对事件处理程序进行单元测试,尤其是当它们需要来自事件的信息(例如鼠标坐标或事件目标)时?最常见的做法是将行为重构为一种方法来进行提升,而处理程序只是从事件中提取信息,还是有有效的方法来模拟 FlexUnit 或 Fluint 中的事件分派(dispatch)?

最佳答案

大多数情况下,我手动创建一个事件对象并从正在监听的对象中分派(dispatch)事件,特别是这样我可以确保没有没有正确删除的 float 事件监听器。有时我会遇到我的测试类无法访问调度对象的情况。如果是这样,我将业务逻辑从实际的事件监听方法中分离出来,保持事件监听方法极其简单和轻量,并测试业务逻辑。如果可以的话,从对象调度会好得多。

FlexUnit 和 Flunit 不提供任何事件分派(dispatch)的“模拟”;如果您可以访问该对象,您就可以从中分派(dispatch),如果不能,FlexUnit/Flunit 也不能​​。

但是,在使用事件时,您需要了解 FlexUnit/Flunit 如何提供进行异步单元测试的方法。调度模拟事件意味着您正在启动一个在方法完成时未完成的操作,因此您必须创建一个异步测试。 FlexUnit 的文档在他们的 ASDocs 中,Flunit 在他们的主页上有一个很好的在线文档集:http://code.google.com/p/fluint/wiki/AsyncTest

关于apache-flex - 单元测试 Flex 事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1179560/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com