🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP POO ABAP Unit

ABAP POO ABAP Unit

ABAP POO ABAP Unit

VIDEO – ABAP UNIT

Que es ABAP UNIT?

Es un mecanismo con el que implementar unitarios o de modulos en ABAP

Que es un TEST unitario UNIT TEST?

Es un test que valida el funcionamiento correcto de una porción de codigo

Que es una unidad UNIT?

Es una porción de código, por ejemplo, un meto, un form, una función, donde una entrada dada produce un efecto verificable.

Idealmente es la parte más pequeña de código que pueda ser verificad aisladamente.

Como se programa un TEST ABAP Unit?

Se implementan como una clase local ABAP definida como “FOR TESTING”

Esta clase local ha de formar parte de la clase, grupo de funciones o programa que se quiere verificar.

Porque los ABAP UNIT forman parte del código ABAP?

Los unit test están sincronizados con el código que validan

Los unit test no forman parte del programa que se transporta a producción, por lo tanto no producen perdidas de rendimiento.

Que servicios provee ABAP Unit?

La clase que ofrece es CL_AUNIT_ASSERT que contiene métodos estáticos para comparar datos que validen el test definido.

Los métodos más importantes de la clase son:

ASSERT_EQUALS: chequea la igualdad de dos objetos de datos.

ASSERT_DIFFERS: chequea la diferencia entre dos objetos.

ASSERT_BOUND: chequea la validez de la referencia de una variable referenciada.

ASSERT_INITIAL: chequea si la referencia de una variable referenciada es válida

ASSERT_NOT_INITIAL: chequea si un objeto de datos no tiene valor inicial.

ASSERT_SUBRC: chequea el valor del SY-SUBRC.

EJECUTAR LOS TEST

Para ejecutar los test ejecutamos las siguientes opciones del menú:

Para los programas: PROGRAM -> TEST -> UNIT TEST

Para las clases: CLASS -> UNIT TEST

Para los Módulos de función: FUNCTION MODULE -> TEST -> UNIT TEST

Ejemplo:

*&---------------------------------------------------------------------*

*& Report ZTEST_ABAP_UNIT

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT ztest_abap_unit.

DATA: valor TYPE i.

PERFORM asignar_valor CHANGING valor.

WRITE valor.

*&---------------------------------------------------------------------*

*& Form asignar_valor

*&---------------------------------------------------------------------*

* text

*----------------------------------------------------------------------*

FORM asignar_valor CHANGING p_valor.

p_valor = 10.

ENDFORM.

*----------------------------------------------------------------------*

* CLASS test DEFINITION

*----------------------------------------------------------------------*

*

*----------------------------------------------------------------------*

CLASS test DEFINITION FOR TESTING. "#AU Risk_Level Harmless

"#AU Duration Short

PRIVATE SECTION.

METHODS test_asignar_valor FOR TESTING.

ENDCLASS. "test DEFINITION

*----------------------------------------------------------------------*

* CLASS test IMPLEMENTATION

*----------------------------------------------------------------------*

*

*----------------------------------------------------------------------*

CLASS test IMPLEMENTATION.

METHOD test_asignar_valor.

DATA: valor_test TYPE i.

PERFORM asignar_valor CHANGING valor_test.

cl_aunit_assert=>assert_equals( act = valor_test

exp = 20

msg = 'Error: el valor difiere del correcto').

ENDMETHOD.

ENDCLASS. "test IMPLEMENTATION

Podemos utilizar ABAP UNIT para probar:

· Un programa ejecutable

· Un module pool

· Un grupo de funciones

· Un Módulo de funciones

· Un class pool

El programa a probar puede contener muchas clase de prueba y una clase de prueba puede tener muchos métodos de prueba.

Todas las pruebas unitarias pertenecientes a un programa se organizan dentro de lo que se conoce como TAREA DE PRUEBA.


 

 

 


Sobre el autor

Publicación académica de Josep Antoni Lopez Moyano, en su ámbito de estudios para el Máster ABAP POO.

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "ABAP Unit" de la mano de nuestros alumnos.

SAP Senior

ABAP UNIT Es un mecanismo con el que podemos implementar test unitarios o de módulos Abap. TEST UNITARIO (UNIT TEST) Es un test que valida el funcionamiento correcto de una porción de código. UNIDAT (UNIT) Una porción de código (método, función o form) donde una entrada produce un efecto verificable, idealmente es la parte más pequeña del código. PROGRAMAR TEST ABAP UNIT Se implementa como una clase local, definida como FOR TESTING, la cual forma parte del programa que se quiera verificar. Los unit test están sincronizados con el código que validan; no forman parte del programa que se transporta a productivo. Abap unit ofrece una clase de servicio CL_AUNIT_ASSERT...

Acceder a esta publicación

Creado y Compartido por: Julio Villalta / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


¿Qué es un Test Unit? Es un test que valida el funcionamiento correcto de una porción de código. Unit es una porción de código (Ej. Método, Función o Form) donde se produce un efecto verificable a partir de una entrada. Un programa Test ABAP UNIT se implementa cómo una clase local ABAP definida como “FOR TESTING”. Esta clase local forma parte del programa, función o clase que se quiere verificar, por lo tanto no producen pérdidas de rendimiento CL_AUNIT_ASSERT clase de servicio de ABAP UNIT que contiene métodos estáticos para comparar datos que validen el test definido. Los métodos más importantes de esta clase son: ASSERT_EQUALS,...

Acceder a esta publicación

Creado y Compartido por: Luis Alfredo Lombardi Pizarro

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


ABAP Unit: permite implementar test unitarios en una porción de código ABAP (unidad donde una entrada produce un efecto verificable, parte más pequeña que puede verificarse). Se define una clase "FOR TESTING" local para incluirlo en el código (están sincronizados para no perder rendimiento). CL_AUNITE_ASSSERT con métodos EQUALS (igualdad), DIFFERS (diferencia), BOUND (validez de referencia), INITIAL, NOT_INITIAL y SUBRC.

Acceder a esta publicación

Creado y Compartido por: Daniel Alejandro Monteros Segura

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!