AOP@Work: 对方面进行单元测试-验证横切行为的八种新模式 - 编程入门网
过为了节省篇幅,我 决定不在本文中明确地讨论它们。
测试模式编目 我将本文写成测试面向方面代码的模式的编目。对于每种模式,我描述了它 针 对哪种类型的错误,对该模式进行总结,提供一个例子并讨论该模式的优缺点。 编目分为四节: 测试完整的单元 :此节展示了测试完整的系统部分(换句话说,同时测试方 面和非方面类)的模式。这种技术是在没有使用方面时获得横切行为信任度的惟 一方法,并在使用方面时仍然是一种重要的工具。 使用可视化工具 :这里描述的两种模式利用了 AspectJ IDE 对 Eclipse 的 支持,也称为 AJDT。严格地讲,使用可视化工具检查应用程序的横切结构不是 一 种测试技术。不过,它可帮助您理解并获得对应用程序的横切关注点的信任。 使用委派 :此节展示可以帮助将前面提到的两类错误分开的两种模式。通过 将一些逻辑从建议中分离到 helper 类中(或者方法中),可以编写与横切规范 无关的、检查应用程序横切行为的测试。 使用 mock 目标 :最后一节包括三种模式,它们使用模拟真实建议目标的 “mock 目标”类,可以在不将方面集成到真正目标的条件下测试联结点匹配和 建 议行为。 Highlighter 方面 为了展示这个编目中的样式,我使用了一个实现突出显示搜索术语(即在搜 索 结果中突出显示用户的查询术语)的方面。我实现了与在上一例子中展示的方面 非常相像的一个方面。该系统要在结果汇总页、细节页和应用程序的其他一些地 方中突出显示术语。我在本文中展示的这个例子只横切一个类,但是原理是一样 的。清单 1 包含 Highlighter 方面的一个实现: 清单 1. Highlighter 定义了突出显示行为
AOP@Work: 对方面进行单元测试-验证横切行为的八种新模式(3)时间:2011-09-07 IBM Nicholas LesieckiHighlighter 方面捕获联结点的返回值并换成突出显示的版本。它根据存储 在 Highlightable 接口中一个类型间字段中的突出显示术语清单选择要突出显示的 术语。可以对任何需要表现突出显示行为的类使用 Highlightable 接口,既可 以 使用在类声明中,也可以使用 declare parents 语句。 在这个例子的初始版本中,我选用一个非常简单的切点。在本文的后面,我 将 重 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |