SoW (Statement of Work)

1. General

Customer Name

EPAM System

Entity Type

Internal product

Project Name

EPM-JDI

Product

JDN (Just do nothing)

JDI Family presentation: 2023 JDI Family presentation.pptx

2. Project Description

2.1 Project Objectives

JDN – is the Chrome plugin for UI test automation. It helps Software Test Automation Engineer to create Page Objects in the test automation framework

  • Provide a user-friendly interface to detect objects for creating tests;

  • Reduce the time spent by testing engineers on writing test automation frameworks.

Generally:  EPAM provides the “JDN” – a Google Chrome plugin for optimization of the UI tests creation process, with the resulting impact of reducing time spent by testing engineers on writing it.

Target audience: Software Test Automation Engineers

The main terms are described in the section

2.2 Platform

JDN is an open-source product, which is placed on GitHub (https://github.com/jdi-testing/jdn). The technologies are below:

  • Frontend: React, Javascript.

  • Backend: Python, Flask/FastAPI, Docker.

  • DS: PyTorch (sklearn, numpy, pandas).

2.3 Process Description

The solution delivers the following functionality:

  • Automatic recognition of objects on the web page;

  • Automatic creation of Java code for testing UI of web objects;

  • Ability to manage objects to create code;

  • Chrome extension with a user-friendly interface to interact with the solution.

The diagrams below represent the business processes that will be configured as part of this SOW.

  • The diagram provides the process “As Is”

 

image-20240329-111633.png

 

  • The diagram provides the process “To be”

image-20240329-111706.png


Basic user scenarios to create Page Object

  1. The most standard way to create a classic Page Object is via Generate All button and then select the necessary locators using checkboxes

  1. You can also use the coverage (by website, on the left side) and select the locators you need by double-clicking or by adding locators via the context menu by right-clicking

 

  1. Also, you can create an Empty Page Object to select the locators you need on the tested site yourself. We recommend using the selection of the area you need via mouse selection, then adding them to the PO using the context menu

2.4 Assumptions, Constraints, and Dependencies

  • The team of project permanently changes, so It challenging to keep the project within time limits;

  • The product will be implemented as a plugin for Google Chrome.

 

  • Availability: It’s the standalone app, available everywhere (24/7);

  • Maintainability: Automatic code review with Codacy to check code quality, pull requests reviews, QA process

  • Performance Efficiency: The computation depends on the PC where it’s run. Manual control of such resources as time and computing performance.

  • Portability: An isolating environment of the product allows transferring the solution with ease.

  • Security: as an open-source product the JDN plugin is available for everyone to contribute and download. To get access to internal project documents addresses the project manager. The format of the standalone app allows for avoiding transferring users’ sensitive data.

  • Usability: The plugin uses the English language.

  • Extensibility:  The plugin recognizes different element libraries, starting with a limited set.

  • Documentation: User Manual, FAQ

2.5 Deliverables

  • Server (Docker file);

  • Serverless backend;

  • Frontend part of the plugin in Web Store;

  • Documentation.

2.6 Success Criteria

Represented here for each release:

3. Team 

The team of the project changes frequently. The current state is described here:

4. Governance

Project Managers:

 

EPAM Systems:

 

EPAM Systems:

Name:

Alexey Girin

Address:

Russia, Saint Petersburg

Phone:

+7 999 202-16-81,+7 911 244-08-66

E-mail:

alexey_girin@epam.com