Il seguente elenco descrive i livelli di richieste:

| Azione | Metodo |
|---|---|
| Elabora eventi di basso livello | processMouseEvent |
| Individua la destinazione di un'azione di trascinamento | getMethodSpecForPoint |
| Supporto punto di verifica | getTestDataTypes getTestData getProperties getStandardProperties getProperty |
| Metodi di gerarchia | getMappableParent getParent getChildren getMappableChildren getOwner getOwned |
| Supporto riconoscimento | getRecognitionProperties shouldBeMapped getRole getTestObjectClassName getRecognitionPropertyWeight |

Il client Functional Tester invia richieste a tutti i domini di test se possono trovare l'oggetto di destinazione nella relativa gerarchia associazione oggetti registrata utilizzando le proprietà di riconoscimento registrate.
| Risultato | Azione |
|---|---|
| Non viene rilevato alcun oggetto di destinazione | Viene generata un'eccezione che indica che non è stato rilevato un TestObject. |
| Vengono rilevati diversi oggetti di destinazione | Per determinare il vincitore, viene utilizzato il punteggio di rilevamento dell'oggetto, altrimenti questo può risultare ambiguo. |
| Viene rilevato un TestObject univoco | Sul proxy viene richiamato il metodo dell'azione di riproduzione. Ad esempio, l'azione di riproduzione che è stata registrata potrebbe essere il metodo click(). |
| Nella soglia dell'ambiguità è stato rilevato più di un TestObject | Viene generata un'eccezione ambigua. |

Functional Tester utilizza le proprietà di riconoscimento e la gerarchia del controllo per individuare un controllo e fornisce un'interfaccia. Queste informazioni vengono raccolte e memorizzare nell'associazione oggetti. Durante la riproduzione le informazioni memorizzate vengono utilizzate per individuare univocamente l'elemento UI. Functional Tester raccoglie inoltre le informazioni su coordinate dello schermo, dati e proprietà del controllo, dettagli di riflessi e parti dei controlli quando richiesto. Presenta l'elemento UI con le informazioni raccolte come un TestObject nello script.
In fase di registrazione delle azioni utente come clic sul mouse, doppi clic o trascinamenti vengono registrati come rispettivi metodi TestObjectin in uno script di test. Ad esempio, button().click(atPoint(10,10)). Durante la riproduzione, Functional Tester rileva il TestObject corrispondente utilizzando le informazioni memorizzate nell'associazione oggetti e l'azione utente viene eseguita in base a ciò.