Tips and tricks Best practice guides, FAQ & more
With more businesses on the web, or moving to the web, it’s not often you see new desktop application releases. But the fact remains - many companies rely on a complicated blend of desktop applications, web applications and legacy systems to perform business critical processes.
This makes cross-platform or cross-application test automation a crucial factor in faster deliveries, and higher test coverage, in enterprises.
“QA teams need to use the right tool sets and technologies, the right skilled professionals, and the fit-for-purpose processes to get it right” - Capgemini World Quality Report 2020-2021
So what is the modern solution to the challenge of automating testing across technologies and platforms?
Cross-platform testing can refer to the ability to test between systems and applications that are running over a wide range of platforms and technologies.
If a business performed automated cross-platform testing, it would mean they are automating tests across several technologies such as virtual, cloud or legacy systems.
The problem is that testing across platforms and technologies is incredibly resource intensive, difficult to maintain, and near impossible to scale.
Consumers continue to demand more accessibility, mobility and functionality of applications, increasing the workload for developers and testers.
The COVID-19 pandemic has severely impacted QA and IT strategy, forcing teams to become more agile, to do even more with even less, and to adjust to new ways of working with their colleagues. - Capgemini Quality Report 2020-2021
And with fewer resources and decreasing budgets, this challenges businesses ability to test new features and business critical processes.
It may be that you have a technical developer available to create end-to-end automated test cases across one or more technology. But as your test cases grow more complex, the people available to build tests are most likely not available.
You’d have to scour the earth to find the resources available to automate across all platforms and technologies.
In the perfect scenario, you’ve found the elite team of developers with the time to create exemplary code for your growing regression suite. It runs across mainframe, web applications, and desktop applications, and other underlying technologies.
But how often does the perfect scenario happen in the office? The average joe has few resources available, and has to juggle the prioritization of their tasks.
Automation, used effectively, can become a true value provider for improving the agility, efficiency and quality in development. But it can require a lot of maintenance with certain approaches.
Let’s take the example of John, the developer. John has been requested by QA to build an automated test for a large ecommerce company.
He is end-to-end testing a user placing an order. The order is placed. It’s sent to the desktop based ERP application. Then comes the financial settlement which takes place in a legacy system.
In this end-to-end case, John has to build a test between web, desktop and a legacy system. He knows how to automate web, but not desktop and legacy applications. John then has to find available people who understand how to automate the latter two applications. They have to build unique chunks of code to run tests across these applications.
On top of that, the end-to-end case has to work within the confines of the individual applications, as a whole, and during a regression test.
The maintenance required to keep these tests running, more often than not, outweighs the benefit of coding automation in the first place.
That’s a tough and time intensive job. Even on a small scale.
It might not be the same person building automation in test as the person developing software or business solutions. But at the end of the day, the resources are still strained.
If you create an end-to-end test on a small scale like above, the maintenance would be manageable. But that’s not always the case if your business is searching for a permanent capability to automate.
And when you add to the list of people you have to involve, you’re also adding additional code to maintain and operate. At this point, the ability to scale your automation becomes a tough uphill battle.
IT has changed, and the tools and technologies we use to address IT challenges, like resource availability, is changing too.
"Most big companies’ approach to developing and releasing software reflects controls they put in place years ago to maintain quality and avoid costly mistakes...as the pace of technological change has accelerated, the controls have lost their relevance. Now they’re just obstacles." - BCG
Although some test automation tools cannot support cross platform testing, there are examples of businesses who scaled their automation with one tool across platforms and applications.
Enterprise solution DELMIA Apriso searched for ways to automate their Manufacturing Execution System. Given that it was the first time they had implemented test automation, they were faced with the need to scale their production fast.
With many integrations, the project required an automation platform that worked across multiple technologies, such as legacy systems and desktop applications.
In eight days, they were able to produce end-to-end automation flows with one automation platform. With a commercial tool, as opposed to a self-built automation framework, their testers were able to easily maintain and scale their testing.
Rather than learning how to code automation across a mesh of systems, and finding each of the resources available to build it, you can make automation more accessible.
By replacing complicated coded automation with visual technology that presents your tests as simple workflows, testing can be transformed.
With Leapwork, the complexity of code is hidden behind a common visual interface. This means the way you build and see the process is the same, no matter what technology, application, or platform you’re automating.
This allows users to seamlessly switch between systems with simple building blocks and opens up an entirely new set of available resources - business users who understand the perspective of the customer, and how the application should function.
As more businesses realize the benefits of automated testing, the tools available to automate is growing.
Giving testers the tools and technologies to manage an entire flow from one place can, without relying on intermediary steps, simplify building and running test scenarios, no matter what platform or applications under test.
With Leapwork, businesses can automate cross-platform tests, whether on Java, Windows applications, or legacy systems. This enables users to create end-to-end tests with one codeless automation solution.
You can build upon your knowledge and discover the seven points you should consider when finding the right cross platform testing tool in this easy guide. You can also access the points to consider when searching for an automation tool in this evaluation checklist.