The Need
Our customer, 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 are looking for a partner company to create a robust test automation framework to ensure the quality of the code for each commit along with a CI/CD setup.
Impacts Delivered
- Exceeded the expected quality criteria for the code.
- Achieved almost 100%, unit test coverage by using the tool.
- Dynamic setting of the lighting profile enabled the automation to be executed 24X7
- Test coverage and release frequency has exceeded the target levels.
Our Solution
- Continuous Integration & Delivery (CI/CD) set up
- A CI/CD system based on Jenkins was implemented to ensure the quality of code in each commit.
- Static code analysis using SonarQube.
- Unit test framework using Cantata to ensure code coverage.
- Test Automation Framework development
- A Scalable Automation Framework with Keywords to interact with Gateway, Sensor, and Validate the results using DALI bus commands.
- Sensor controls using a relay module to automate restart/power on/off scenarios.
- Dynamic lighting profile creation using scripts: used for checking the profile change at the configured time of day.
- Jenkins installed in an AWS ec2 instance to be the master node for controlling the CI/CD
- Static Code Analysis is performed using SonarQube
- Cantata for unit testing
- Jenkins on AWS ec2 for the creation of CI/CD pipeline.
Tools & Technologies
- SonarQube for static analysis of code
- Cantata for unit testing
- Jenkins on AWS ec2 for the creation of CI/CD pipeline.
Automation Framework Architecture Diagram