Develop an automated ECL Watch Test Suite

This project is available as a student work experience opportunity with HPCC Systems. Curious about other projects we are offering? Take a look at our Ideas List.

Student work experience opportunities also exist for students who want to suggest their own project idea. Project suggestions must be relevant to HPCC Systems and of benefit to our open source community. 

Find out about the HPCC Systems Summer Internship Program.

Project Description

ECL Watch is a web based application provided by HPCC Systems ESP (Enterprise Services Platform) component that allows end users to manage and monitor their cluster workload. Among its several capabilities, ECL Watch supports management and monitoring of workunits, files, queries and even user access to the cluster. One example of such interface can be accessed here: https://play.hpccsystems.com:18010.

Such a critical component of the HPCC Systems stack requires extensive testing whenever a change is made to its source code or a new feature is provided. Therefore, the objective of this project is to develop test cases for the ECL Watch UI that can be automated via a command line test suite. A preliminary test framework for functional testing is already available but requires further development and expansion (see "Important Resources" section below).

To accomplish this, the following requirements must be considered:

  • Testing of the ECL Watch UI would most likely be done with Selenium.

  • A single sample test of the UI is already available in the current CI build tool but would need to be expanded. This sample test is written in Java but it may make more sense to use other programming languages for the tests (JavaScript, Python and C++).

  • The development should be made on a fork from the main HPCC Systems GitHub repository: https://github.com/hpcc-systems.

Completion of this project involves:

  • Learning general HPCC Systems architecture.

  • Development of a fully functional test suite as specified above.

  • Creation of documentation for the project.

  • A blog, a recorded presentation, and a poster artifact about your project (see examples from previous years here).

Mentor

Attila Vamos
Attila.Vamos@lexisnexisrisk.com

Backup Mentor: Chris Lo
Christopher.Lo@lexisnexisrisk.com

Skills needed
  • Java, JavaScript, Python or C++

  • Unix Shell 

  • Selenium and Eclipse

  • Ability to deploy and test the HPCC Systems (guidance will be provided).

  • Ability to write test code. 

Important resources

All pages in this wiki are subject to our site usage guidelines.