Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.

OSGi Testing Support

Testing support for OSGi


This project provides a set of bundles which contain useful and helpful classes for testing of OSGi API.


This artifact includes common utility classes which are useful in all testing scenarios.


These artifacts provides support classes for OSGi testing with AssertJ including custom assertions. Currently there are artifacts for org.osgi.framework, org.osgi.util.promise, and org.osgi.service.log.


This artifact provides support classes for OSGi testing with JUnit 4 including JUnit 4 Rules.


This artifact provides support classes for OSGi testing with JUnit 5 including JUnit 5 Extensions.

This artifact provides support classes for OSGi testing with ConfigurationAdmin and JUnit 5 including JUnit 5 Extensions.


This artifact provides a JUnit 5 TestExecutionListener that logs test output via the OSGi Log Service.


We use Maven to build and the repo includes mvnw. You can use your system mvn but we require a recent version.

  • ./mvnw clean install - Assembles and tests the project

Build Status

Code Quality

We use CodeQL for continuous security analysis.


Release versions of osgi-test bundles are available on Maven Central under the org.osgi group ID. You can find them here.

For those who want the bleeding edge, snapshot artifacts are published to the Sonatype OSS repository:

Future work

See the open issues for the list of outstanding TODOs.


This program and the accompanying materials are made available under the terms of the Apache License, Version 2.0 which is available at


Want to hack? There are instructions to get you started.

They are probably not perfect, please let us know if anything feels wrong or incomplete.


This project uses the Bnd Maven Plugins to build.