System testing is the process of checking a complete product to see if it works as intended. It can also be referred to as end-to-end testing because it examines the system from the user's perspective, encompassing the entire application.
For example, rather than just testing the login function in isolation, a system test would include creating an account, logging in, browsing, adding items to a basket, and completing a purchase.
It sits alongside integration testing, which checks that parts of the system work together correctly. Integration tests may confirm that the payment service communicates properly with the order service. System testing goes further by ensuring all connected parts work smoothly in a realistic scenario or user journey.
The aim is to give confidence that the system behaves as expected when everything is put together, much like test-driving a fully assembled car after you have already checked the engine, brakes, and lights separately.
For example, rather than just testing the login function in isolation, a system test would include creating an account, logging in, browsing, adding items to a basket, and completing a purchase.
It sits alongside integration testing, which checks that parts of the system work together correctly. Integration tests may confirm that the payment service communicates properly with the order service. System testing goes further by ensuring all connected parts work smoothly in a realistic scenario or user journey.
The aim is to give confidence that the system behaves as expected when everything is put together, much like test-driving a fully assembled car after you have already checked the engine, brakes, and lights separately.