单元测试活动标记为@ManualActivityCompletion

时间:2016-04-25 06:33:54

标签: unit-testing amazon-web-services amazon-swf

我一直致力于创建运行工作流本地版本的单元测试。我按照guide进行了初步设置。通过该设置,我能够成功执行和测试工作流程。当我尝试对标记为@ManualActivityCompletion的活动实现进行单元测试时,会出现问题。看来手动完成活动通常在单元测试中返回(不等待完成/失败调用)。

我想知道是否有可能以这种方式对测试手动完成活动进行单元测试。我的猜测是,因为我没有看到它,我没有看到任何方法来创建测试ManualActivityCompletionClient。在这种情况下,我想知道是否有人对如何在本地工作流程中对手动完成活动进行单元测试有任何建议。我试图通过使用不同的线程和同步点来为此创建变通方法,但是测试完成/失败活动的实际行为(抛出的异常等)很有用。值得一提的是,我已经能够为手动完成活动编写成功的集成单元测试。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

要测试调用@ManualActivityCompletion标记的活动的工作流逻辑,只需直接模拟此活动的客户端界面。当客户端在工作流的异步上下文中执行时,您可以使用Promises和WorkflowClock来实现测试。