自动化的OSGi测试运行器
在我的团队成员中,我以忘记维护(JUnit)测试套件而闻名。 我只是无法为此付出额外的手动为套件添加测试的步骤。 幸运的是,有连续的集成服务器通过命名模式收集测试。 如果我介绍的一项孤立测试失败了,那么它会脱颖而出。
为了弥补这一点,我创建了一个(几乎)免维护的测试运行器。 虽然普通的JUnit测试已经有了这种东西 ,但我找不到OSGi测试的类似东西。
当具有多个捆绑软件时,您通常会拥有一个主测试套件,该套件会汇总所有每个捆绑的测试套件。 要使用BundleTestSuite ,只需替换您的主测试套件,如下所示:
@RunWith( BundleTestSuite.class ) @TestBundles( { "org.example.bundle1", "org.example.bundle2" } ) public class MasterTestSuite { }
RunWith注释告诉JUnit使用BundleTestSuite测试运行程序。 然后,该测试运行程序评估TestBundles批注,并从其中列出了符号名称的所有捆绑软件执行测试。 如果创建新捆绑包,则将其名称添加到TestBundles列表中,并将拾取该捆绑包(或其片段)包含的所有测试。 当前通过名称来标识测试类别。 名称以“ Test”结尾的所有类均被视为测试类。
反思性收集测试的副作用是,您可以删除所有变通办法(Eclipse-ExtensibleAPI等),以使片段中的测试对外部可见。
当在Eclipse中作为PDE JUnit Tests运行测试时 ,捆绑软件的布局不同于常规打包的捆绑软件。 BundleTestSuite考虑了这一点,并在收集测试时解决了Equinox中的错误 。 不幸的是,此问题也影响到Tycho 。 当前,BundleTestSuite不能与Tycho一起运行,因此您现在必须继续使用surefire include / exclude指令。
该代码可在Eclipse Public License下获得,并托管在GitHub上 。 可以从此p2存储库获得最新的稳定版本:http://rherrmann.github.io/osgi-testsuite/repository
事实证明,这个小工具在某些项目中已经有用了一段时间,因此我认为它也可能对您有所帮助。 如果您有任何反馈意见,请发表评论或提出问题 。
翻译自: https://www.javacodegeeks.com/2013/07/an-automated-osgi-test-runner.html
自动化的OSGi测试运行器相关推荐
- jar运行 osgi保存_自动化的OSGi测试运行程序
jar运行 osgi保存 在我的团队成员中,我以忘记维护(JUnit)测试套件而闻名. 我只是无法完成手动添加测试套件这一额外步骤. 幸运的是,有连续的集成服务器可以按命名模式收集测试. 如果我介绍的 ...
- 统一社会信用代码测试_统一的测试运行器和测试分析
统一社会信用代码测试 Hi, I'm Yan and for the past two years I've been a Toolsmith at Unity. We have grown quit ...
- OSGi 规范和框架 OSGi框架类加载机制 Java默认类加载器机制和OSGI类加载器机制比较
一.OSGi 规范 OSGi(Open Service Gateway Initiative) 技术是 Java 动态化模块化系统的一系列规范.OSGi 一方面指维护 OSGi 规范的 OSGi Al ...
- 【自动化】火车头采集器
火车采集器(LocoySpider) 是一个供各大主流文章系统,论坛系统等使用的多线程内容采集发布程序.使用火车采集器,你可以瞬间建立一个拥有庞大内容的网站.系统支持远程图片下载,图片批量水印,Fla ...
- 参数化测试 junit_JUnit中的参数化测试运行器
参数化测试 junit 我们都有书面的单元测试,其中在一个测试中针对不同的可能的输入输出组合进行测试. 让我们以一个简单的斐波那契数列示例为例,看看它是如何完成的. 以下代码针对提到的元素数量计算斐波 ...
- JUnit中的参数化测试运行器
我们都有书面的单元测试,其中在一个测试中针对不同的可能的输入输出组合进行测试. 让我们以一个简单的斐波那契数列为例来看看它是如何完成的. 以下代码针对提到的元素数量计算斐波那契数列: import j ...
- RPA-机器人流程自动化
RPA-机器人流程自动化 RPA-机器人流程自动化简介 RPA是什么? RPA历史上的演变 RPA原理 RPA特点 RPA技术框架及功能 1.TagUI 2.RPA for Python 3.Robo ...
- 自动化测试框架cucumber_基于Cucumber和Testng的WebUI自动化测试方法与流程
本发明涉及计算机技术领域,具体的说是基于Cucumber和Testng的WebUI自动化测试方法. 背景技术: 行为驱动测试方法已经在敏捷开发模式中普遍使用,通过使用标准化的语言将客户需求人员.开发人 ...
- python 自动化-五大自动化测试的Python框架
[51CTO.com快译]自2018年被评选为***编程语言以来,Python在各大排行榜上一直都是名列前茅.目前,它在Tiobe指数(请详见https://www.tiobe.com/tiobe-i ...
最新文章
- 注册窗口类RegisterClassEx AfxRegisterWndClass
- BZOJ 3990: [SDOI2015]排序(搜索+剪枝)
- 采用Angular勾画SVG圆环形进度条
- 使用递归法求阶乘(C语言)
- db2建库、建表空间基本流程
- python核心理念_《三天搞定Python基础概念之第一天》中文版
- B00015 C++实现的图类
- String、StringBuffer与StringBuilder的区别
- Apache Flink 零基础入门(二):开发环境搭建和应用的配置、部署及运行
- java中的配置文件
- 5G NR CSI Report中关于codebook/PMI的理解(1)
- android自动适应横屏,Android屏幕适配(一)--自定义View屏幕适配
- c语言综合项目实践 结构体及应用,C51单片机应用与C语言程序设计(第3版) 基于机器人工程对象的项目实践简介,目录书摘...
- AI研习丨针对长尾数据分布的深度视觉识别
- CDH 5.14.2 server启动报错 Can't DROP FOREIGN KEY `FK_SERVICE_CONFIG_REVISION`; check that it exists
- 集集自助服务密码重置
- 字典(python学习)
- 给新程序员的10条建议
- 一个硅谷实习生竟是顶级黑客?网络安全风险多!
- 位置式PID与增量式PID区别浅析(百度百科增量式PID讲解思路概念更明确清晰)