The client is a leading financial markets operator and provider of execution and information services and plays a pivotal role in bringing together buyers and sellers in wholesale financial markets, globally. The client had procured and was maintaining and further developing its brokerage platform that would be used internally by the company’s brokers.
The brokerage platform was a desktop application running on the JVM with a user interface (UI) based on Java Swing.
A team of developers maintained the legacy code of the platform in Java, with two developers focusing on the UI aspect of the application, adding functionality or updating the previous interface. The team had developed a limited number of unit tests, but had not introduced either automated user interface tests, nor tests for integration into other systems.
Ten10 was asked to provide an assessment of tools for the test automation of the application’s UI, implement a Proof of Concept (POC) for the selected solution and train the client’s resources to use it effectively.
What We Did
Ten10 was tasked with investigating alternative tools to automate tests of the application, assessing them against criteria such as ease-of-use, barriers to adoption and integration capabilities.
The preferred test tool needed agreement from all stakeholders involved, specifically the development, test and DevOps teams.
Once the tool was installed and running, Ten10 needed to demonstrate its features and recommended use via a POC using sample scripts that exercised the application’s key UI features and which supported the incorporation of the selected test automation capability into the client’s continuous integration processes.
Finally, the test automation approach would need to be presented and handed over to the application development team, as they would be undertaking automation of the complete regression suite once the engagement was complete.
Ten10 performed a tool assessment exercise, following an agnostic approach when seeking software candidates. Criteria for selection included each candidate’s ease of use, the efficiency with which new tests could be created and an ability to interact with the various UI aspects of the brokerage application.
The candidates’ maintainability, cost, readability and reporting were also all taken into account.
The two main contenders consisted of an open-source library and a commercial solution, both of which could address the issues already cited. Ten10 provided the client with the advantages and disadvantages of the two solutions, and the open-source solution demonstrated a clear advantage in terms of code maintainability and suitability with the client’s team skillset.
A new framework was designed and implemented based on the open-source library, encompassing automation best practices, such as using the page object model, separation of data and code, and maintainability and readability of tests.
Not only did this result in helping the development team to adopt best practices in test automation and expand the automated testing coverage on their system, they were also provided with a tool they could make use of and customise in the future if required.
Ten10 then provided recommendations for the inclusion of the solution into the client’s continuous integration processes and platforms. Test scripts and a framework were provided, and as part of a training exercise, Ten10 showed the client’s development team how to use both the open-source library and the test scripts and demonstrated the risks and challenges. Best practices and approaches for automation suite maintainability were also discussed during these training sessions.
By building the foundations of the brokerage platform’s UI-automation capability, Ten10 enhanced the client’s UI testing capability