Are you ready to start automating your functional tests? Yes, but before you get started, keep in mind that you don’t have to automate everything. So, which tests should you prioritize?
Embarking on a test automation initiative is undoubtedly a long-term investment, provided you plan ahead and make careful selections . It’s not necessary to automate everything—and, in fact, you shouldn’t automate everything. In reality, automated tests—though quite sophisticated—are not sufficient on their own to provide a comprehensive and relevant assessment of an application. It is necessary to combine manual and automated testing to ensure the quality of web and mobile application development and thereby achieve an optimal return on investment. But how do you know which tests to keep manual and which to automate? By considering four criteria: frequency, criticality, coverage, and complexity.
1. Frequency:
It is essential to automate the most common and repetitive tests—that is, the tests that will be run with every deployment. These are generally non-regression tests and acceptance tests. The question to ask yourself is: When I deploy my application, what do I need to test each time? The tests that come up most often are the ones that should be automated first to save a significant amount of time.
2. Criticality:
It is important to focus on functional tests that cover critical user flows and features—that is, those that have implications for the business, whether financial, legal, or reputational. For example, in the case of an e-commerce site, if a checkout page does not work, the user will not be able to complete their purchase, and this will have a direct impact on the company’s revenue. The ROI is therefore higher in this specific case.
3. Cover:
We also need to consider test coverage, which is becoming increasingly broad as the number of channels grows. While tests must be conducted on multiple browsers (Chrome, Firefox, Safari, IE), on multiple devices (smartphones, tablets, computers), the number of test runs required can quickly increase, and automation can save a considerable amount of time.
4. Complexity:
Some tests are harder to automate than others because they are technically complex, involving many steps, and therefore take longer to develop and maintain. Most often, when starting out with automation, it’s best to focus on tests that are simple and quick to run, as they allow you to identify critical bugs quickly. This doesn’t prevent you from later automating more complex test cases that will build on existing ones to generate longer and more specific test flows.
On the contrary, some tests aren't suitable for automation—such as those involving evolving features—but that will be the subject of a future article…

