Functional Tester admite algunas instancias de anidación de objetos desde diferentes dominios. Esto quiere decir que el usuario puede probar un objeto de un dominio que está anidado dentro de un objeto de otro dominio, y Functional Tester comprenderá los objetos y sus dominios con precisión. Si no se admite la anidación de un dominio dentro de otro, Functional Tester modelará los objetos de forma coherente, pero no acabará de comprender cuál es el dominio de los objetos anidados. Por ejemplo, Functional Tester no admite la anidación de un control .Net dentro de una aplicación de Windows®. En este caso, es muy probable que Functional Tester visualice los controles de .Net como si fueran controles de Windows (porque los controles de .Net se implementan a menudo utilizando mecanismos subyacentes de los controles de Windows). Otro ejemplo sería un diálogo basado en Windows que aparece en la parte superior de una aplicación Java™. En este caso, el dominio de Java no comprende los diálogos de Windows o desconoce que estos existen. Y, puesto que de forma predeterminada Functional Tester no habilita dinámicamente una aplicación Java como si fuera una aplicación de Windows, no existe ningún dominio de Windows en ese proceso. De modo que, en esta instancia, los diálogos no son objetos de prueba sin scripts.
En la lista siguiente se enumeran los casos de dominios anidados que se admiten.
HTML - ActiveX como hijo: se trata de una página HTML que contiene controles ActiveX.
HTML - Windows poseído: algunos diálogos habituales que muestra Internet Explorer aparecerán como objetos de dominio de Windows.
.Net - ActiveX como hijo: se trata de una aplicación .Net Winforms que utiliza controles de ActiveX heredados.
.Net - HTML como hijo: se trata de una aplicación .Net WinForms que utiliza un control incrustado del navegador Internet Explorer.
.Net - HTML como poseído: se trata de una aplicación .Net WinForms que utiliza un control incrustado del navegador Internet Explorer que, a su vez, muestra un diálogo en HTML (que aparece cuando se invoca a ShowModalDialog en JavaScript™).
.Net - Windows como poseído: se trata de una aplicación .Net WinForms que muestra algún formulario de un diálogo que no es de WinForm. Por ejemplo, cuando una aplicación .Net muestra un diálogo común (Archivo, Abrir, Imprimir, etc.) o un recuadro de mensaje.
Java - HTML como hijo: se trata de una aplicación Java SWT que utiliza un control incrustado del navegador Internet Explorer.
Java - HTML como poseído: se trata de una aplicación Java SWT que utiliza un control incrustado del navegador Internet Explorer que, a su vez, muestra un diálogo en HTML (que aparece cuando se invoca a ShowModalDialog en JavaScript).
Windows - HTML como hijo: es una aplicación genérica de Windows (posiblemente VB 6.0 o MFC) que utiliza un control incrustado del navegador Internet Explorer.
Windows - HTML como poseído: se trata de una aplicación genérica de Windows (posiblemente VB 6.0 o MFC) que utiliza un control incrustado del navegador Internet Explorer que, a su vez, muestra un diálogo en HTML (que aparece cuando se invoca a ShowModalDialog en JavaScript).
Windows -.Net como hijo – es una aplicación genérica de Windows (posiblemente VB 6.0 o MFC) que incorpora controles de .Net WinForm.
Se puede comprobar que los objetos pertenecen a dominios de prueba diferentes si se mira la correlación de objetos. En la correlación, cada objeto se enumera según el tipo de objeto y de dominio. Por ejemplo, el siguiente objeto:
Java: Button: close-order: javax.swing.JButton
es un botón Java que es un tipo de objeto javax.swing.JButton. El prefijo "Java:" indica que el objeto está en el dominio de prueba Java. El dominio de prueba de cada objeto es siempre lo primero que se muestra en cada objeto que aparece en la lista de la correlación, como se muestra en el ejemplo anterior. Si un objeto hijo tiene un dominio diferente al del objeto padre, el usuario verá dos prefijos diferentes en la correlación de objetos.