End 2 End Testing!
We were managing a test process for a financial organization project, some changes requested from the customer to a specific charge rate, the modification test scope defined and approved, and we start dealing with.
Before they go live by a few hours, the test analyst confirmed that the modification affects in a report and it's not mentioned in the test scope and it missed out because this report is low priority and it’s not used in a frequently critical system path.
This leads to review all test conditions and suites which were created before to make sure that all E2Es are covered regardless of the priority of the test item.
Converging system flows is not an easy task, especially if the domain knowledge not exists.
Many friends ask me in different training sessions and project as well the questions of what is the difference between system test and an end to end test.
System test and End to End test most of the companies used the terms interchangeably, but they almost not the same.
On term of definition, we can consider system test as a level when we test an integrated system to verify that it meets specified requirements. meanwhile, End to End test as a type under functional test to validate the suitability and interoperability characteristics, and to identify system dependencies and to ensure that the right information is passed between various system components and systems.
The key challenge in E2E is to define the flow of application from the starting point to endpoints.
For example, in our case study, if the charges assigned to any transaction you need to know what the endpoints of those transactions are, it may be another transaction, form, module, report, etc..., and maybe with different “approval statuses” for each transaction.
You can run the E2E with any test level not only the system test, using stubs and drivers may help in component integration test not only when the development of that while application is done.
Written by: Samer Desouky