Por exemplo, se você gravar Button().click(), o método Button() localizará um objeto que é baseado nas propriedades mapeadas e ligará o TestObject a um objeto no AUT. Essa ligação é requerida para informações de consulta do objeto real, como perguntar diretamente ao botão onde ele está localizado no momento na tela. Depois, o método click() é executado e o TestObject tem o registro cancelado, o que libera a conexão com o objeto real no AUT. A utilização de TestObjects do mapa dessa maneira gerencia o ciclo de vida do objeto automaticamente.
TestObjects são expostos para a geração de scripts com base no proxy para o qual eles devem ser mapeados. Você deve especificar o mapeamento de proxy e TestObject para que quando um controle for exposto para o script, o controle seja exposto como o TestObject especificado no mapeamento. Você pode criar o mapeamento entre um proxy e um TestObject substituindo o método getTestObjectClassName() em qualquer proxy. Se quiser alterar o TestObject mapeado para um proxy, substitua a API getTestObejctClassName() para retornar o nome canônico especificado no arquivo de customização.