Skip to content

Testing Scada LTS

Radosław Jajko edited this page Dec 24, 2021 · 2 revisions

Scada-LTS is complex application that has many of relations between specific components. Most of the features are very tightly bound and all of them must work to provide a stable Scada processing. There is a lack of basic Unit testing that will verify that change done by a developer do not affect the processing workflow. But for new functionalities we tried to provide basic tests.

In Scada-LTS we are using multiple kind of tools for testing:

  • Junit Test (for backend side)
  • Mocha Unit Tests (for Vue.js part)
  • Scada-LTS E2E Tool (For business logic verification in classic UI)
  • Cypress E2E Integration Tests (for modern UI integration with backend)
  • TestQuality service to perform maunal tests.

🧪 JUnit Tests

All necessary information is available on dedicated page for UnitTests in Scada-LTS. Briefly all the provided functionality in backend should be verified and protected by the simple JUnit tests. But what to test? Inputs and Outputs from specific controllers, services or methods.

💠️ Mocha Unit Tests

Mocha tests are stored inside "unit" directory in ScadaLts-UI subproject. There is validated frontend logic such like the layout, visibility, accessibility and specific methods processing. Most of the logic is performed in the backend side but the UI must sometimes process the input messages and convert them to valid format and that are the things that should be checked.

🌀 Cypress E2E Test

Are responsible for integration between Scada-LTS UI and the core application. There should be checked the logic such as a creation, modification or deletion of business objects. More advanced concepts that require the connection with backend server.

📑 Test Quality

It is a service where users can define their own scenarios to check in Scada-LTS that may be difficult to automate. Before each release at least one global test run should be performed that will verify if everything is still working.