Understanding the Difference Between System Testing and User Testing
Purpose of System Testing
System testing confirms that the system is developed according to the system specifications and that the system performs and interacts with the user as expected.
Examples of system testing include: Did the buttons perform the actions assigned? Did the forms confirm that all the required fields contain valid entries? Do the links navigate users to their intended destination? Can the user recover a lost password? Does the system layout match the design? Does the system functionality meet the system design specifications? Does the design meet accessibility guidelines? Does each user role have access to all the functionality limited to that role? Are expected errors clearly identified for user correction?
Unit testing confirms each individual component functions as they are built but system testing is the confirmation that all the system functionality performs end to end as a single system. And, each set of system updates should be followed by a full system regression testing of all system functionality to confirm only expected changes were made or address/correct inadvertent changes before the updates are released into production.
Expectations of System Testers
System testers should know how to perform an action and the expected result(s) of that interaction. Additionally, they should have a clear understanding of which results are expected or unexpected errors.
System testers are the last line of defense to ensuring the system functions as intended before user representatives evaluate the system. User representatives have more confidence in a system or release when they can focus on their own testing goals and not on system performance issues.
Purpose of User Testing
User testing confirms that the user can interact with the system in the expected time and manner to perform specific activities that are aligned to business need and usage.
Examples of user testing include: Can the user successfully perform the intended activity (purchase tickets, request a refund, schedule an appointment, etc.) in an effective manner? Are the proper instructions provided? Does the system enable the user to follow a logical process in performing those activities? Does the system meet regulatory and customer expectations? Are the alternate process paths anticipated and addressed? Did the user exceed the expected length of time to perform an activity?
Expectations of User Testers
User testers should know what activity they are trying to perform and why that activity is needed. They need to understand the overall business goals well enough to recognize whether or not those goals are met. User testers should not be confirming if system functionality performs as expected.
System Testing vs. User Testing Conclusion
Each have a different role in confirming that the solution meets expectations. System testing confirms that the design and technical aspects are met. User testing confirms that business goals and strategy are met.