Test automation – Quality Assurance
What is test automation?
Automatic tests are a satisfactory solution for companies that already have their product or service. The application needs to be continuously expanded because automated tests are introduced when we regularly add new elements to it. This might cause the other functionalities not to work correctly.
Why do we need automated tests?
- To find out if frequent changes in the app influence other features that worked before,
- To save time by not performing manual tests with every implementation.
The business value of test automation
- Tests repeatability – each tester at itCraft has a list of cases that they should go through. The automatic tests are performed using programmed scheme. Afterwards, we generate a report and we already know what went wrong so when the test is repeated we can check if now everything’s fine,
- The failure report – with manual test, the tester needs to cooperate with a developer to find out what is not working and why. With automatic test we can cover 95% of failure reasons so it’s highly time-saving,
- Device fragmentation – when it comes to Android, there are more or less 30 000 different devices and they don’t have the same version of the system. There’s no way to verify each case manually. Automatic tests allow us to perform testing procedures on many devices at once,
- Considering the timeline and the multitude of device testing, the process of automated testing gets cheaper comparing to manual tests.
Graphical User Interface Testing
These tests simulate the end-customer behaviours. They click through the application to imitate a person using the final product. We define test requirements, determine what should be tested and wait for the outcome. This type of testing takes much more time, but it’s worth waiting for the results.
API Integration tests
We go through crucial user scenarios that run a sequence of API requests. Our goal is to test the most important API methods. API Integration tests take only a couple of minutes and are used to report bugs that can be found on the API side. This way, we can verify if the bug in the application is the fault of the app itself or if the API causes it.