Testing Software Features with Requirements Knowledge
Requirements-based testing (RBT) is a process to uncover software defects that fail the stakeholder needs or desires. With the new and improved features that the software vendor releases continuously, edge cases of a feature and interactions of multiple features are less tested. For example, Zoom released the “Declining a meeting invite with a message” feature in September 2022 (see image below). Has this feature been thoroughly tested? Does this feature interfere with any existing Zoom features? An answer to the latter question is the “Do not disturb” feature that allows the user to block any pop-up notifications for chat. These two features work well in isolation, but fail to meet the goals in composition. This Protégé research project is aimed at developing algorithms to automatically test newly released features and feature interactions, thereby improving software quality and user satisfaction. The algorithm development will involve several components: (1) performing natural language process (NLP) of feature descriptions, (2) building test scripts, and (3) automating the acceptance test execution.
Assoc Professor, CEAS - Electrical and Computer Engineeri
832 Rhodes Hall