A Pennsylvania based Healthcare MegaCorporation approached Algoworks to design their workflow, [...]
Testing Automation Propels American Billing Firm's SaaS Platform To The Next Level Of Competition
Algoworks develops an Selenium based automated testing environment to drastically reduce development costs and improve remarkably the user-friendliness and performance of their new Software-as-a-Service so as to establish a new force in the domain - our CLIENT!
Our client was a world renowned name in providing one-stop billing solutions to enterprises. They were an established business in US and had just started to expand their business in global markets. After having developed a new SaaS based app with professional developers, the only major hurdle for the client to expand in the international market was a bug free app. The chief concern of the client was now to ensure that the app is 100% bug free and had capabilities to handle large amount of sensitive data in an extremely secure environment. The massive Software as a service application had hundreds of features. However testing the application from scratch through manual testing methods would prove to be a very time consuming process. And time is a very valuable commodity if you were aiming for cloud based market domination. The client approached Algoworks to help them test the application in an automated and manual environment. They had a very strict time scale for the project and the same time wanted to thoroughly check the app for security. Based on their requirement we proposed using a Selenium and JUnit based testing environment for automated testing.
How We Did It?
Selenium & JUnit
Challenge: How to automate the testing process
The first and foremost concern of the client was to automate the testing process. Their app was only in the first viable product stage and additional features were being added to it constantly in modular form. So not only they needed a solution to perform unit testing on all the modules that have already been developed, but also needed an automated testing environment to check the performance of all the modules that will be developed in future. In addition since it was web browser based app, they needed their app to be cross-browser compatible.
Solution: An Integrated JUnit and Selenium automated testing environment
We designed and developed a JUnit based testing environment to test all the modules of the SaaS application. Since the application was web based, we integrated Selenium to the JUnit environment. Selenium enabled our test environment to automatically check the app on all major browsers such as Firefox, Chrome, Internet Explorer, Safari etc. The whole environment was built upon Apache Maven tool. We further automated our process by integrated this testing environment with a job scheduling application, an automated reporting solution, and an action time tracking solution.
Automated Job Scheduling
Challenge: How to schedule automated testing operations without overloading server
The development cycle of the product was very fast. Every month new features were being added to the software platform. The client needed a way to test these new changes as well as their impact on old features in an automated way, without overloading the daily run-time of the server. They need a solution that can schedule their automated testing jobs.
Solution: Scheduling automated testing jobs using Jenkins
We integrated our Selenium-JUnit environment with Jenkins, a robust job scheduling platform. We customized Jenkins to automatically run scheduled jobs every night. For each new module that was added, we created testing jobs for it in Selenium-JUnit environment, and then scheduled those jobs in Jenkins. We customized our Jenkins solutions to a click-and-play feature ease job scheduling.
Action Time Tracking
Challenge: How to track time taken for each action performed
The main reason for the SaaS based application was to reduce bill processing time. Therefore each action had to be user-friendly enough that it can be completed in a fixed time frame. If the time taken by a module exceeds the desired time, then the whole module would have to be redesigned and rebuilt. Therefore the client needed their automated testing solution to automatically test the time taken per action.
Solution: Custom JAVA scripts to test time per action
We created custom JAVA scripts to test time-per-action in each job. These scripts would be associated with each test job and they will actively track the time that it it takes to complete a successful user action. The script will not only take into consideration the time it would take for a user to click a button, but also the average time it takes for a server to respond and the time it take for data records to be copied safely and securely to the database.
Automatic Report Generation
Challenge: How to receive automatic reports about each test job
As the SaaS platform was very big, each day hundreds of jobs were scheduled and runned. It was very difficult to manually check the performance of each job in Maven. Not only was it time consuming, but also quite technical. Therefore the client needed comprehensive test reports to easily check the performance of each job and check the time-per-action for each user-action.
Solution: Surefire Maven Plugin to create automated test report
Our whole test environment was managed on Maven platform. Therefore it was most suitable to use Surefire Maven plugin to generate automated reports of testing jobs. We configured the plugin to create reports in multiple formats including XML, CSV, XLS, and PDF formats. The reports depicted in a user-friendly the time it took for each job to complete itself, the time-per-action data, and most importantly the success/failure rate of each job.
Reduced Development Time by 4 months
Automated testing reduced testing and development time by more than 4 months
Saved Thousands of Dollars
The client saved thousands of dollars of development costs by reducing their development time
Complete 12000+ Test Scenarios In 3 Weeks
Our automated testing environment and conducted 12000+ complex testing senarios in less than 3 weeks
Application Became More User Friendly
By tracking the time taken for each action, we made the app more user-friendly
The Algoworks team has been instrumental in development and design for many projects. Their level of detail, ownership and expertise provides a very trusting experience and engagement. Algoworks is a valuable and trusted resource. Very dependable.
David Franklin Vice President at Ventas Consulting
Algoworks has been helping us with various implementations and enhancements and has been our true partner along the way. They are consistently there when we need them and go above and beyond to get the job done. They are a pleasure to work with and we will be a continued client for years to come.
Lori Terrizzi CEO & Founder of Goaloop™, USA
Team Algoworks consistently went above and beyond in terms of responsiveness, adaptability to new requirements, and dedication to client and concept.
Bonnie Worthington CRM Analyst at Construction Specialties, Inc
These guys were great and handled everything perfectly. What I was most impressed with was their communication. They were constantly updating me on their progress... daily. Which really helps when you're a business owner. I highly recommend Algoworks.
Eric Pierce Founder, Clearview Elite | Lead Response Expert
It TRULY is an amazing achievement!!! Turning this entire Alfresco/Liferay Portal around in such a short duration was quite an uphill task, but you guys made it possible!!!
Mike Abell Vice President
Checkout these related project to know about our company, our work, and our expertise.
Algoworks helped an American based Texas Billing Platform plan and build a completely cloud bas[...]
Algoworks engineered the intranet HRM portal with Microsoft 365 Integration for a Multinational[...]
Algoworks provided Alfresco and Liferay Based LMMS (Learning Material Management Solution) To C[...]
Are you facing similar problem in your project or if you want a custom solution fitting your needs, dont hesitate to contact us for a free consult and quote. Get our expert advice before moving forward.