Our client is a leading product company in the smart home industry harnessing the power of IOT to create world class smart home products.
The smart home solution mainly offers IOT based smart sensors like smoke alarm, water leak detectors, garage door sensors, and a mobile app. The mobile app, available on both iOS and Android platforms facilitates the provisioning of the smart sensors to a WiFi network either through SoftAp mechanism or Sound based mechanism. Whenever there is a water leak or if the smoke alarm goes off the user will get a push notification to his smartphone alerting the user about the event. The app also lets users customize the smart sensor’s features according to their needs.
iLeaf Solutions has been associated with the client on a long term basis providing its services for mobile app and cloud development. Since the client had an increasing number of white labelled versions of the smart home app, reducing the time required for each release cycle became a challenge that needed to be addressed. We did Automating Regression Tests for this IoT based Smart Home Mobile App. Please know more about this project from IoT Based Smart Home Mobile App.
Go through our PORTFOLIO to know more about our latest projects.
The main challenge came with the increasing line of white labelled apps such that whenever there was a feature addition or feature modification or general updates in the smart home app, our team of testers had to manually verify all the changes and perform regression testing on the smart home app and the white labelled versions of the app as well. This required a tremendous amount of time and effort thus affecting the delivery deadline. We realized the fact that along the way the amount of time and effort required would only be increasing as the number of white labelled apps increased.
So our expert team of testers came up with the idea of automating the regression tests in order to tackle this challenge.
We discuss to ensure that we have the exact idea of what is required
There's regular interaction with the client to ensure things are on track
Begins according to the needs of our client
The final output will be a perfect match to our clients requirement
The automation testing team at iLeaf Solutions initially conducted a thorough analysis and created a regression test suite which was suitable for automation, since some of the test cases could only be performed manually we had to differentiate those first.
To automate the test cases, iLeaf’s Automation engineers used the Appium framework. The framework was chosen as it enabled the automated testing of both the iOS and Android versions of the smart home app using a single codebase thus saving time and resources otherwise needed to develop and implement separate automated regression testing for the two platforms. The scripts were written in Python which indeed helped us to speed up the scripting process.
We adopted a Data driven model of testing which enabled us to improve the test coverage and test with multiple sets of data. We also followed the Page Object Model architecture which enabled us to easily maintain and modify the scripts. On top of that we created a wrapper class which wrapped all the appium commands so that we were able to increase the stability of the tests.
Some of the test cases were based on database testing, so we had to integrate MongoDB to our scripts and write queries and fetch data and assert them according to the test cases.
During the course of developing the test scripts, the client wanted a possible solution to scale the automated tests on different testing devices of different OS versions and different screen sizes. After thorough analysis we decided to go with a cloud based solution, eventually choosing AWS Device Farm which had a large device pool and was cost effective as well. This also helped us to get the video footage of tests which failed, which helped us to reduce the time in reproducing and debugging the issues.
We handled the project management using JIRA and the version control of the automation scripts is done on bitbucket.org
Appium, Python, MongoDB, AWS Devicefarm, Xcode, Android Studio, GitKraken
The Test Automation team was able to deliver a highly stable Regression test automation framework to cover a wide range of test cases on both the iOS and Android platforms.
The client was highly satisfied with the output and the fact that the regression automation test suite delivered by iLeaf Solutions met the clients requirements and was able to positively impact the delivery deadline.
The automation scripts thus delivered also lessened the manual efforts which enabled the testers to focus more on exploration based tests .
Our test automation engineers regularly conduct automation tests during each release cycle and also maintain and modify the scripts whenever there is a feature change in the mobile app.