BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Workflow Foundation的单元测试

| 作者 Jonathan Allen 关注 529 他的粉丝 ,译者 赵劼 关注 4 他的粉丝 发布于 2008年10月28日. 估计阅读时间: 1 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!
Windows Workflow Foundation为那些使用数据流架构风格的应用程序提供了强大的功能。不过使用这些功能是有代价的。与传统的批处理应用程序不同,Windows Workflow Foundation无法做到自动测试。
 
目前有一些尝试,它们都在设法让测试变得更容易令人接受,不过得到了不同的结果。Ron Jacobs使用自定义的行为和数据流进行测试。某些人,例如Maurice de Beijer并不看好这个做法:
大部分人认为对自定义数据流行为进行单元测试是几乎做不到的。没错,你可以创建一些用于测试的伪造数据流来包含你的新行为,新建一个Workflowruntime,创建一个WorkflowInstance并打开。但是请考虑到这里所有的依赖关系,额外的伪造数据流,以及整个WorkflowRuntime和它所有的依赖关系。这基本上已经无法算作是一个单元测试,而是一个集成测试了。当然集成测试并没有错,这也是非常有用而且必须的,但是它们无法提供单元测试所能给你的快速测试,以及你可能需要的动态测试覆盖等特性。
造成单元测试困难的原因很大程度上是因为ActivityExecutionContext是密闭的。Maurice使用使用TypeMock来绕开了这个限制
 
很不幸,这两种做法的复杂程度都无法让我们开发数量稍多点的自动测试。希望将来这个情况能有所改变。
 

查看英文原文:Unit Testing Workflow Foundation

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT