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!


About 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.

Feature Image
Feature Image

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.

Feature Image

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.

Feature Image
Feature Image

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.

Feature Image


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


Related Projects

Checkout these related project to know about our company, our work, and our expertise.

Post Image

ASP.Net Project For Pennsylvania Based Health Firm

A Pennsylvania based Healthcare MegaCorporation approached Algoworks to design their workflow, [...]

Read More
Post Image

Java Project on Multi-Tenant SaaS Platform for a Texas Billing Firm

Algoworks helped an American based Texas Billing Platform plan and build a completely cloud bas[...]

Read More
Post Image

Microsoft 365 Integration Project for European Energy Multinational

Algoworks engineered the intranet HRM portal with Microsoft 365 Integration for a Multinational[...]

Read More
Post Image

Alfresco and Liferay Project for Renowned University In Finland

Algoworks provided Alfresco and Liferay Based LMMS (Learning Material Management Solution) To C[...]

Read More

Contact Us

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.