Software testing is the process of executing a software system with the intent of finding errors. Through software testing, we can (1) verify that the software system behaves “as specified” and (2) validate that what has been specified is what the user actually wanted.
Software testing requires a test case which primarily consists of test inputs and expected results, to execute a software system and to determine whether the software system has passed or failed such a test.
Research in software testing involves developing effective/efficient software testing techniques and strategies regarding testing activities such as test case generation, test case selection/prioritization, test case execution, and test adequacy evaluation. There exists a lot of rooms for new studies in the field of software testing because different types of software system (e.g., embedded, desktop, mobile, and web application) need different testing methods to get tested, and demands for software testing are growing nowadays. You will find it interesting to dive into software testing research:)