WEB开发网
开发学院软件开发Java 一种轻量级、可重用、可扩展的 OSGi 应用程序测试... 阅读

一种轻量级、可重用、可扩展的 OSGi 应用程序测试框架

 2009-12-01 00:00:00 来源:WEB开发网   
核心提示: 基于 extension point + fragment 的实现在第二种实现方法中,引入 fragment 机制是为了提供一种轻量级的分离测试框架和具体测试用例的方法,一种轻量级、可重用、可扩展的 OSGi 应用程序测试框架(5),我们提出这个基于 OSGi 测试框架的一个目的是要分离测试用例

基于 extension point + fragment 的实现

在第二种实现方法中,引入 fragment 机制是为了提供一种轻量级的分离测试框架和具体测试用例的方法。我们提出这个基于 OSGi 测试框架的一个目的是要分离测试用例和业务逻辑代码。那么能否也使用 fragment 的机制来达到这个目的呢?答案是肯定的,不仅仅提供测试框架的 bundle 可以作为“宿主”,被测 bundle 也可以作为“宿主”。图 4 显示了这一实现的框图。

图 4. 基于 extension point + fragment 的实现框图

一种轻量级、可重用、可扩展的 OSGi 应用程序测试框架

在这一实现中,我们将测试用例作为被测 bundle 的 fragment,这样在运行时,测试用例可以和被测代码运行于同一 bundle 中,免去了导出(export)一些被测包(package)的麻烦,可以完全做到不修改被测 bundle。发布正式产品时只需要去除那些包含测试用例的 fragment 即可。而 JUnit 测试框架运行于另一个独立的 bundle 中,为了让测试用例能够正确执行,可以采用第一种实现中所述的 service 方式,而另一种方式是利用 Eclipse 平台提供的 extension point 机制。测试框架 bundle 需要定义一些 extension point,而测试用例则需实现这些 extension point。这样就把测试用例和测试框架关联起来了。

这种实现的好处是结构清晰,测试用例也便于管理。但是由于要依赖 Eclipse 平台提供的 extension point 机制,其适用性受到一定的限制。同时如果测试用例本身就需要和被测 bundle 分离,那么这样的实现方式可能会无法满足某些测试目的。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:轻量级 重用 扩展

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接