Case Study on Selenium PHP Framework Development and QA Services
Domain: SaaS e-commerce solutions
Services Used: SaaS product testing services, Selenium automation testing, QA assurance
Tools: Selenium automation testing tools, including Selenium IDE, Selenium RC, Ant and Jenkins.
Technology: PHP, MySQL
Our client SaaS E-commerce Product Company has been a leading provider of SaaS e-commerce solutions to small and medium businesses. Its product is an integrated on-demand suite designed to facilitate expansion of business and enhanced sales. The suite helps achieve improved sales and business expansion through additional channels focused on both top- and bottom-line growth. The suite cuts down operational complexity and brings down associated costs significantly improving functionality, efficiency, and profits. While data aggregation through reporting and dashboard capabilities improves business visibility, multiuser access option, and effective management of front- and back-office functions help users reduce overlaps, avoid complexities, and increase efficiency and resource utilization.
Growing market competition in the SaaS e-commerce solution provider segment made our client to develop an unfailing suite ready for market integration within a limited time frame and with a low budget. The client was looking for an independent software testing company with adequate experience and expertise in SaaS product testing and offering reliable QA services at affordable prices. The search for a testing service provider was based on three parameters, extensive experience in SaaS testing and Selenium PHP framework development, low-cost performance and functional testing services, and independent software testing and QA services from the view point of unforgiving customers. Our client wanted to create a robust Selenium automation testing framework for its future need to evaluate the applications by deployment of customized templates and without dependence on IT services.
The key technical challenge was establishing a Selenium data driven framework using configuration property file. The scripting language to be used was PHP and PHPUnit was selected as the preferred execution tool. The client’s SaaS e-commerce solution delivery model was based on cloud technology, which necessitated a software testing approach completely different from traditional way of testing. Concurrent with multiple functions covering both front and back end, the Selenium automation testing framework was required to take cognizance of convenience of end users and the large-scale convergence of delivery models for accounting, CRM, content management, HR, enterprise planning, and service desk applications that are part and parcel of every business.
360Logica successfully implemented a full-fledged Selenium-PHP framework. It was data driven and completely in sync with client’s technology platform. We also integrated test suite with CI – Jenkins with the help of build tool – Ant.
360Logica team of experts proficient in functional testing of SaaS products used advanced Selenium automation testing tools and multiple computers for parallel running of tests bringing down the time required for the purpose effectively.
Initial scripts were created using Selenium IDE, a Firefox plug-in used to record test cases and play them whenever required. PHP codes were extracted from Selenium IDE and functions are created as per the framework requirement. PHP editor is run during the scripting process and the suite is examined using PHPUnit. Following the execution, HTML test scripts are generated after editing.
While running the test cases on Selenium automation testing tools, integration complexities are looked into and defects are documented for reference. Any type of defects discovered using the bug tracking system was rectified. Every time any change was incorporated, the application underwent the Selenium automation testing process again to establish integration credentials. Once the Selenium automation testing was over, a new directory and compatible XML files were created. All these are synchronized with Ant, a tool built for deployment of the application.
Automation suite was integrated with continuous integration tool – Jenkins. The implementation was made to ensure automatic management of the test execution. Rules are defined in Jenkins for test suite execution, e.g. test suite execution is initialized on build deployed, any code changes, at any particular time, etc. This process helps automate the entire execution process and reduce manual intervention.
We applied both unit and component software testing to validate the application in parts and as a whole unit guaranteeing its robust integration and unfailing performance. Right from scalability to compatibility and integration testing, we made it possible for our client to market a robust SaaS-based solution that generated immense customer goodwill and sales references for it.
Low-cost software testing services by 360Logica helped the client develop Selenium automation testing framework within the budget and offer the product to customers at low cost giving it an edge in the market.
Deployment of dedicated teams helped ramp up the project within the time limit and to the convenience of the client. Impartial and independent software testing helped give all possible customer expectations due consideration and fix the defects accordingly.
While the in-house experts complemented each other with their expertise and experience in software testing, the client was kept informed at every stage. This transparent approach and effective test management helped the client consider our convenient outsourcing software testing services just an extension of its organization leading to better communication and understanding of requirements. The client was able to free resources and management from supervisory functions and concentrate on sales expansion.
Regression test is a key requirement for the SAAS product of our client, which undergoes frequent changes necessitated by customer needs. 360Logica team achieved this by automating most of the business workflows and heavily used areas. This process brought down the effort for regression test by more than 1/10.