Clases anidadas, una de la característica que nos provee Yun It, que es bastante útil, no permite
ordenar organizar otro método de test, pero dentro de una clase anidada en Java se le conoce como inner
class, es decir, una clase que está dentro de otra clase y podemos colocar varios métodos en una clase
dentro o anidada de tal forma para poder organizar de forma jerárquica nuestro texto visiblemente.
Queda mucho mejor y no solamente visible, sino también organizamos nuestras pruebas por lo que hacen
por el contexto.
Se fijan, por poner un ejemplo, todos los métodos que estamos utilizando el asun true, por ejemplo,
o asumen DAT estos dos que están relacionados porque estamos asumiendo algo y estamos trabajando, por
ejemplo, con variables de ambientes de fijan podrían ir en una clase nester anidada lo mismo todos
los enabled y en barrios en variable también.
Otra clase da lo mismo con esto de acá sisten property o sistema operativo o incluso si quiero organizar
nuestros test por contexto.
Por ejemplo, te provando nombre de cuenta, sĂłlo cuenta se fijan cuenta entonces todo lo que se da
cuenta yes el nombre o saldo dentro de una clase nidada.
Podríamos tener otra clase anidad para todo lo que es el débito.
El crédito que es un poco más profundo dentro de la cuenta.
Método de operación se fijan lo mismo que el banco cuando realizamos la transferencia lo tenemos un
poquito abajo.
Por ejemplo, transferir.
Quizás esos tres métodos pueden estar dentro de una clase.
Sé que transferir saldo débito de alguna forma están relacionados forma parte del mismo contexto.
Veamos el ejemplo.
Partamos primero categorizado nuestros test.
Bajamos por ejemplo y acá vamos a partir con el sistema operativo.
Creo que es lo mejor por acá.
Listo.
Entonces acá vamos a tener una clase anidada.
Es una clase default, sin públic, sin nada default.
Dentro de la clase principal le damos un nombre por poner un nombre class sistema operativo
test perfecto.
Las llaves bajamos, se fijan.
Ahí tengo una clase anidad y meto relacionado con el sistema operativo en Nabeel on o s lo vamos a seleccionar
completo todos.
Por ejemplo, hasta acá perfecto.
Y estos tres métodos van acá.
Que tenemos otra clase se fijan anidada.
Ya versión texto, perfecto.
Entonces acá los seleccionamos, atacan, cortamos, pegamos.
Siten Property Test también va bajamos.
Y todo lo que es así, Properties ataca.
Lo pegamos.
Varía el ambiente?
Test.
Y si lo hiciéramos todo en perome invariable, hasta acá corta.
Y lo pegamos.
Listo.
Bueno, hoy tenemos clase.
El siguiente paso es anotar, es decir, indicar de alguna forma de que se trata de una clase que estamos
organizando.
Entonces con este electo se Bejan Neste importamos de.
Y acá tenemos nuestra clase anidad.
Lo mismo acá y lo mismo acá.
Yaca?
Perfecto.
También podríamos modernizar por contexto un poco más rria.
Acá estamos probando todo lo relacionado, cuenta.
Entonces por acá pude obtener class, cuenta, texto, cuenta, pero cuenta test.
Ya lo tenemos.
La clase principal se fijan acá.
Cuenta Test, entonces podría ser kuenta test, nombre y salto se fijan y todo lo que tenemos acá lo
movemos, lo seleccionamos acá tan pronto nombre la cuenta.
Perfecto.
Acá el saldo, la cuenta.
La referencia también de alguna forma está relacionado con ambos atributos y está ahí.
Perfecto.
Ahora tenemos otro test neste.
Qué más podríamos tener acá operaciones, texto, cuenta operaciones, por ejemplo,
texto.
Y llega, podríamos tener todo lo que débito, crédito y transferencia del banco.
Vamos a mover esto de acá.
Quizás el manejo acepcion no puede ser otra que la sanidad y hoy podemos tener todo lo que manejamos
exepciones con el hacer thru se fijan, podemos tener todos esos comprobaciones y realmente la sección
que se está lanzando en un método es la correcta.
Podríamos tener todo eso dentro de una clase.
Lo cortamos, lo pegamos, pero un poco más bajo.
Tenemos otro transferencia de dinero también.
Eso lo podemos cortar y pegar.
Y la relacioné.
Bueno, aparte sería otro contexto.
Lo dejamos así, ya que faltaría faltaría anotar acá con esta.
Y por acá lo tenemos anotado con este sí está perfecto.
Bien.
Otra característica de Nether estas iner class anidada.
Bueno, también podemos colocar algún hooks o eventos el foreach o Asterisk en esta clase before hold
ya no solamente para la clase principal.
Eso no se puede colocar en los iner en la clases anidad solamente lo que tenga relación con cada método,
con los ids before after lo podemos utilizar sin ningún problema.
Otra característica es que me permite también colocar display name, por ejemplo por sobre el nombre
de la clase para dar un nombre más atractivo, más detallado de lo que hace esta clase anidad en general
y después por cada método.
Incluso podríamos tener una descripción en el nombre de la clase con alguna oración.
Alguna descripción?
Y después cada metodo continúa con esa descripción, pero un poco más personal para cada uno de estos
métodos.
Es decir, que la descripción que tenga la clase tenga una continuidad y tenga sentido, con la excepción
de cada metodo, se fijan más que nada algo 100 por ciento gramatical, nada más.
También lo podemos hacer, por ejemplo, acá, no sé, en este display name
robando atributos
cuenta por ejemplo atributos de cuenta y acá el nombre de la cuenta corriente de origen.
Entonces probando atributo C, la cuenta en nombre de la cuenta corriente Fisher cuenta 40.
Está además porque está dentro acá de la cuenta Lusaka cuenta corriente fija simplemente es true quitamos.
El nombre acá lo mismo prueban Rosalba, el Sargón, Torriente, el salto está acá, le quitamos del
contour ente, lo quitamos porque está además el saldo que no sea Anul mayor queseros se fijan, no
queda mucho más organizado testeando reference que sean iguales con el método iguales perfectos.
Eso está bien y así podemos dar descripción.
Ven, vamos a probar.
Fuera de la clase.
Y digo qué método?
Siempre en la clase principal y levantamos.
Veamos, acá tenemos nuestra clase principal, acá tenemos nuestra clase.
Si se fijan se forman como nodos y cada tiene sus hijos, su jerarquía.
Acá tenemos una clase anidada.
Acá tenemos otra.
Bueno, acá cuenta operación test, yeva versión test, probando atributo le cuanto corriente se fija
el nombre, el saldo que no sea Anul testeando.
Sistema operativo texto todas las pruebas sistema operativo que mucho organizado mucho más fácil de
navegar System properties texto imprimir todas nuestras variable de sistema y nuestra prueba.
Varia el ambiente, todo lo relacionado con varia el ambiente.
Luego tenemos los métodos propios ya.
Luego tenemos el método propio que quienes están anidado en ninguna clase salvo insuficiente exception.
Se acuerdan que no lo agregamos a ninguna clase, sĂłlo cuenta de que son los asuntos o supuestos para
habilitar o deshabilitar de forma programática.
Lo dejamos en la raíz.
También pueden ir en una clase nidada.
Decir lo queremos manejÃ a nosotros en realidad.
Claro, tampoco.
No hay una regla de oro que nos diga cuándo o cómo o dónde tenga que implementar estas inner class.
Con este un poco que no haga sentido a nosotros mismos, cómo lo queremos organizar?
Se fijan por categoría, por tipo de prueba unitaria o incluso podríamos organizar solamente por atributos
de la cuenta bré a prueba sobre el atributo nombre con diferentes valores.
Varias pruebas sobre el atributo sĂłlo con diferentes valores se fija en tem..
Podemos categorizar en ese sentido.
En fin, no hay una regla de oro para esto.
Lo importante es que si dentro de una clase anidada falla alguno de los métodos, falla la clase completa.
Anidada porque se va heredando esto se va de una jerarquía.
Si falla el hijo, también falla el padre.
Y por supuesto, si falla el padre, falla también el abuelo.
La cuenta test, la clase principal.
No sé, por poner un ejemplo.
Acá llega ñando.
Te ponemos Ñón Rojo Roe, ejecutamos siempre fuera por acá Control Cheff, F10.
Ya falla de partida, falla a causa de que falló.
Cuenta texto.
Y eso está bien, está bien.
Acá está el problema.
Se fijan en esa clase de fallo de clase anidada y falló este hijo testeando referencias que son iguales.
Entonces también es mucho más fácil de detectar un error, sobretodo cuando son clases de tests con
mucho método de test.
Tal como lo tenemos acá.
Es fácil de hacer un seguimiento, ver dónde falló y cómo va rebotando.
Es el padre.
Entonces vamos a implementar estas pruebas.
Esta clase es indert class o anidadas solamente para organizar nuestra clase.
Categorizar.
Nos vemos en la siguiente clase.