Test Automation and CI CD deployment For Lighting Control Solution
Our customer is one of the market leaders in wireless lighting control solutions. The lighting control IoT solution reduces the energy consumption of buildings by up to 85%. They were looking for a partner company to ensure the quality of code for each commit and a CI/CD environment setup.
- A CI-CD framework based on Jenkins was implemented to ensure the quality of code in each commit.
- Static code analysis performed using SonarQube.
- Unit test frame work using Cantata for ensuring code coverage.
- A Jenkins master slave architecture enabled to Automated testing by a predefined Test bench.
- An Automation Framework with Keywords was developed that interacts with Gateway and Sensors, validate the results using DALI bus commands.
- Sensor controls using relay modules were used to automate restart / power on/off scenarios.
- Dynamic lighting profile creation using scripts - used for checking the profile change at configured time of the day .
Outcome and Benefits Delivered
- 100% Code quality criteria met for all code commits through
Static code analysis and
Unit test coverage
- 200% increase in release frequency
- 24x7 test execution enabled through dynamic setting of the lighting profile
- 40% reduction in testing cost
Solution / System Description
- Jenkins installed in an AWS ec2 instance will be master node for controlling the CI-CD
- Separate Slave nodes are created for Build and Test execution.
- Slave node in the Test Bench will enable execution of Test automation in Real Devices.
- Static Code Analysis is performed using SonarQube
- Unit testing and Coverage is achieved using Cantata
- Cantata reports are integrated to SonarQube
Download this Success Story