functionality testing is primarily used with