This proposal has been approved and the Eclipse Kiso-testing project has been created.
Visit the project page for the latest information and development.

Eclipse Kiso-testing

Friday, August 27, 2021 - 11:28 by Sebastian Fischer
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Parent Project
Proposal State
Created
Background

Embedded software as a field is continuously evolving. More powerful CPUs (e.g., ARM Cortex M) and communication possibilities (e.g., LoRa, NB-IoT, ...) are allowing us to create new kind of devices (e.g., IoT (INTERNET OF THINGS) field) with a new kind of complexity. 

Harnessing this complexity is a key to build great products. To do so, embedded developers need to be able to test (automatically) if each contribution they are doing works with the current software. 

By scouting the open-source landscape, it was not possible to find a tool or framework that allowed to test every aspect of embedded software for a developer.

Scope

The Eclipse Kiso-testing project provides an integration test framework for embedded software.

With Eclipse Kiso-testing it is possible to write:

  • Whitebox integration tests directly on the arget device

  • Graybox integration tests to make sure the communication-link with the target device is working as expected 

  • Blackbox integration tests to make sure an external device interfaces are working as expected 

Description

The project will contain: 

  • The core python framework (creates the testing environment and run the tests) 

  • Plugins for the core framework (functionalities that can be used for creating the testing environment and used by the running tests) 

  • Additional libraries for different target platforms (e.g., stm32, ...) or languages (C, C++, ...) that enable you to deploy tests on different targets. 

With the Kiso-testing platform it is possible to write tests by directly 

  • Using python unittest native like test-cases 

  • Using the robot-framework keyword-based test-cases 

The Kiso-testing tool provides the needed functionalities to generate the following reports: 

  • Junit reports 

  • Requirement coverage reports 

  • Robot framework reports 

Why Here?

Eclipse Kiso (https://github.com/eclipse/kiso) is/was hosted by the Eclipse foundation. Kiso-testing was a sub-project. It became more popular than the initial project as such. 

This project proposal is about transforming an Eclipse foundation sub-project to a standalone one. 

Future Work

We do not have a roadmap as such, the main development happened the past 2 years. We do have internal customer requesting features (on two weeks base) and plan internally to grow the number of customers/users. 

Next steps would be to increase, also externally, awareness about the project. To do so, we will participate to the EclipseCon and other open-source events. 

Project Scheduling

Everything should already be open-sourced. 

We will continue to work and contribute to Kiso-testing until it gets changed to a main Eclipse project. 

Project Leads
Committers
Sebastian Fischer (This committer does not have an Eclipse Account)
Damien Kayser (This committer does not have an Eclipse Account)
Sebastian Clerson (This committer does not have an Eclipse Account)
Mentors
Initial Contribution

The code is already open-sourced

Source Repository Type