Non-functional testing is a type of software testing that checks properties of the product that don’t determine its functionality but are essential to a positive user experience, such as performance, usability, reliability, security, etc.