Application Lifecycle Management and Testing
The linear waterfall method in Application Lifecycle Management (ALM) has had its day
Today, testing in particular must be dynamic across the entire lifecycle of an application in order to keep up with agile competitors. Companies that work with complex SAP infrastructures should always test S/4 Cloud updates carefully before rolling them out, otherwise there is a risk that business processes will no longer function smoothly. A lack of performance tests, for example, can lead to applications running slowly and unstably - and customers may drop out as a result.
However, conventional test approaches take time and the effort required to design, implement and maintain them is high. It is therefore advantageous to largely automate tests by integrating continuous testing into the DevOps pipeline right from the start. This is not too much of a challenge for innovative start-ups. These newcomers have the advantage that they start tabula rasa and do not have to carry any legacy burdens.
By contrast, long-established players on the market usually struggle with complex, historically grown application stacks. The processes in such confusing systems are often very rigid and strict compliance requirements apply at the same time. How is it possible to achieve an appropriate level of automation in testing under these conditions? The following strategies help companies with historically grown architectures to integrate continuous testing into their DevOps pipeline.
Strategies for test automation
Companies often take a script-based approach to test automation. However, this causes considerable effort. This is because if the tested application changes, both the scripts and the framework have to be checked again and possibly updated. This consumes time and resources. To make testing easier and faster, a solution is therefore recommended that offers automation of test cases across the entire technology stack - from a central platform, without code and with little effort.
Another reason why many companies struggle with test automation projects is test maintenance. There are two main issues here: unstable tests and tests that are difficult to customize. If an automated test fails with an unchanged application, there is a stability problem. This can be remedied by using more stable identifiers, for example. In addition, unsuitable test data or unstable, incomplete environments can also cause a test to fail. The second hurdle - inflexible tests - can be avoided by creating tests from modules that can be reused throughout the entire test series. If business processes change, the individual modules can be easily updated and the respective tests automatically synchronized. To further reduce test maintenance costs, it is also advisable to keep the test environment as lean as possible.
Tests can be accelerated even further by companies reducing the proportion of UI tests whenever possible. API tests are more robust, faster and easier to maintain, making them better suited to modern development processes. They are also able to test functions for which UI tests are not suitable. All of these strategies open up ways for companies to ensure continuous testing across the entire application lifecycle management. In this way, even market players with historically grown application stacks remain agile and do not have to hide from the dynamic newcomers.
SAP Cloud ALM (Application Lifecycle Management) is to become the SolMan of cloud computing. What sounds logical has many challenges. We provide answers to where ALM is helpful and where complementary ITSM tools are needed.