EASE [1] is an advanced scripting framework which has been honoured with Eclipse Community Award for the Most Innovative Project 2016. It allows the execution of script code within the context of the running eclipse platform. As of today it supports scripts written in JavaScript (Rhino & Nashorn), Python, Groovy and JRuby.

EASE is a module based framework where user can make use of any Java classes and wrap them as script libraries (modules). There are lots of built in modules available in framework which can be used as is by user from his scripts. For example there are modules for plotting live graphs, modifying workspace resources, accessing GIT etc.

EASE also hosts a Junit like test framework to execute scripted tests. These tests can be run interactively or can be integrated into CI Environment.


 [1]: Eclipse Advanced Scripting Environment: https://projects.eclipse.org/projects/technology.ease


Outline/Structure of the Talk

- Introduction to EASE framework

  • Script shell
  • Built in modules: Resources, Launches etc
  • Run/Debug EASE scripts
  • Code completion for JavaScript & Shell

- Unit test framework

  • Writing test cases
  • Configuring test suites
  • Generating reports

- Write first module for EASE

  • Extension point to register modules

- Example scripts

Learning Outcome

At the end of this session users will have fair knowledge on EASE and they can start using it by writing their own scripts and libraries

Target Audience

Eclipse and/or RCP developers

schedule Submitted 4 years ago

Public Feedback

    • Sravan Kumar Lakkimsetti

      Sravan Kumar Lakkimsetti - Release Engineering at Eclipse

      20 Mins

      Have you ever wondered how the results automatically appear in the website? This talk will take you through this journey from the code to the results –the multi-stage, multi-tech release engineering process internals.

      There two different streams producing three different regular builds ( not taking into account the special P and Y) with the final bits running four different platforms making it a gruesome 32 hour journey optimized by parallelization. This process has four pipelined stages, with each stage driven by separate owners – one of them being Maven-Tycho configuration and the rest being a combination of shell Scripts, Ant, Junit in sync with multiple Hudson servers (HIPP).

      To give a peek into the stages : The first stage has private as well as publicly visible parts, using two stage cloning with bare bones and normal git repos owned by Scripts. Second Stage, owned by Maven-Tycho, is responsible for three maven-tycho builds. This output feeds into the next phase, owned by shell-scripts, which does a few things resulting in a transient pseudo-private download zone which again feeds into the last stage owned by Hudson-Ant-Junit Config and is responsible for actual firing of the tests in multiple platforms. Finally you have the publicly viewable html based downloads and results.

    • Daniel Megert

      Daniel Megert - The Eclipse Way

      45 Mins

      This talk will explain the secret of the success of the Eclipse Platform team. The Eclipse Way is an agile software development process that we started right at the beginning when we started to develop Eclipse back in 1999. It was and is used by the Eclipse Platform team and got continuously improved over time. During the session you will hear about all our practices, like milestones, early and iterative planning, continuous integration and the endgame. I will also reveal some of the history behind the Eclipse top-level project.