If you have an app where the user must give their address when subscribing, what are the test that can be done?
User doesn't exist, invalid character in a field, user exists, wrong street name for the zip, wrong state for zip, wrong house number in the street, age below threshold, age above threshold,...
Each of these example must be done manually at least once to prove that the logic is correct and the tester must keep a report of it.
But, for each of these basic test, the data must be in a specific state (especially for the name already exists) so between each test you usually have a data preparation phase.
When you have a lot of these tests because it's spanning logic from decades, it takes time, especially when dealing with investments or insurance.
And usually for these test, you hire specific people that are targeted on correctness, not speed.
Now imagine what happens when you're at step 89 of your test and it fails.
The dev fix the code, fix the automated tests... And the tester restarts from step 1.
...Sir/madam, we have test environments, and comprehensive banks of (overtime hopefully idempotized) test data. When your schtick is software verification, one of the first things you develop a damn near fetishization for is test data management infra, and a place to store it. It's... A weird fixation admittedly. But getting data to land in just the right place at the right time so your testcase can run in a maximally parallelized fashion... chef's kiss Is perfection.
User doesn't exist, invalid character in a field, user exists, wrong street name for the zip, wrong state for zip, wrong house number in the street, age below threshold, age above threshold,...
Each of these example must be done manually at least once to prove that the logic is correct and the tester must keep a report of it.
But, for each of these basic test, the data must be in a specific state (especially for the name already exists) so between each test you usually have a data preparation phase.
When you have a lot of these tests because it's spanning logic from decades, it takes time, especially when dealing with investments or insurance.
And usually for these test, you hire specific people that are targeted on correctness, not speed.
Now imagine what happens when you're at step 89 of your test and it fails.
The dev fix the code, fix the automated tests... And the tester restarts from step 1.