News
Mar 27

Lomnido QA Process and Update Options

The Lomnido software delivery process follows an “Rolling Release” concept and has a continuous deployment pipeline that enables frequent and rapid deployment.

The QA process is highly automated.

Build Phase

As soon as a developer has committed new code, the build server starts building the artifacts and runs the Unit Tests.  If no error occurs, the newly created version is provided to a “Test Runner” and three test environments.

Automated Test Phase

The automated tests consist of three different types:

GUI Tests

The GUI tests are based on Selenium and executed with a Google Chrome and a Firefox browser. Since the Lomnido user interface (UI) is mainly intended for administrators, we focus on this two browsers.

There are currently 121 GUI test cases available. All tests together cover the entire graphical user interface. Each test case is recorded and enables errors to be found very quickly.

Here is an example of an recorded GUI test case:

Vimeo

By loading the video, you agree to Vimeos's privacy policy.
Learn more

Load video

API & Workflow Tests

The main component of Lomnido is the workflow engine. With many workflow tests, we ensure that all types of connectors and workflow options are tested and that new functions are fully backwards compatible.

As soon as a new feature is implemented, the developer is obliged to also implement new test cases.

There are currently around 700 API and workflow test cases available. Since everything is configured with a REST API, these tests also ensure the correctness of the full API.

SIAM Core Tests

The SIAM Core tests are special workflow test cases for the SIAM Core.

At the moment we have 203 SIAM Core test cases in place.

When we recognize special or complex patterns in customer projects, we also build also a test case to ensure the compatibility of future version.

Manuel Test Phase

The manual test phase is an explorative testing of existing features and functions, and structured testing of new features and functions.

If there are no findings, the version is marked as “Latest Stable” and then this version can be used for any platform.

Development Process

Before the QA process begins, we have already defined rules for the development process to ensure high quality of the software. Here are some rules:

  • Code reviews
  • Pair programming for major changes
  • Test driven implementation – implement test cases parallel with the implementation
  • Make sure that developers have an deep understanding of “secure coding”
  • We follow strongly the OWASP Security Knowlege Framework https://owasp.org/www-project-security-knowledge-framework/

Long running tests

Beside of testing all builds and running all testcases once, we have also a longrunning testcase in place to check for memory leaks or any other “unusual” behaviour like too many open files or database connections. Therefore we manually take a build from time to time and throw all testcases for at least one week onto this test environment. Then we analyze the performance graphs and we see hopefully nothing unusual.

 

Update Lomnido Platform

The platform owner can decide how to update his platform. Therefore we have settings in the Setup-System menu:

Update Interval

This is a setting for automated updates.

The setting “Day” can also be “DISABLED” – then no automated updates are executed.

At this point in time, if “Day” and “Time” are selected, the Lomnido platform checks whether all workflows are idle and whether a newer version is available. If so, the update will be executed and an email will be sent to “Email Receivers”. If the workflows are not idle, the platforms waits 5 minutes for 3 times and try to update. If all of these update attempts fail, the update is postponed to the next week.

Manual Update

If a newer version is available, you can upgrade to this newer version manually at any time. You will also see release notes for the newer version.

Version History

There is also a version history to see when the platform was updated.