Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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 User UI and API 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).

...

  • 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 JavaScript other programming languages for the tests .Testing of the ECL Watch API would leverage the @hpcc-js/comms library as it would not only test the ESP server, but also the client comms library(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 including a GitHub repository 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 and JavaScript, JavaScript, Python or C++
  • Unix Shell and PowerShell
  • API testing
  • SeleniumShell 
  • Selenium and Eclipse
  • Ability to build deploy and test the HPCC system Systems (guidance will be provided).
  • Ability to write test code. 
Important resources